Ich versuche, Sätze von einer Zeichenkette zu erhalten, die eine gegebene Teilzeichenkette mit Python enthalten.Den umgebenden Satz eines Zeichens/Wortes in einer Zeichenkette finden
Ich habe Zugriff auf die Zeichenfolge (eine akademische Zusammenfassung) und eine Liste von Highlights mit Start- und Ende-Indizes. Zum Beispiel:
{
abstract: "...long abstract here..."
highlights: [
{
concept: 'a word',
start: 1,
end: 10
}
{
concept: 'cancer',
start: 123,
end: 135
}
]
}
ich über jedes Highlight am Looping, Ortung ist es Index in der Zusammenfassung (das Ende ist nicht wirklich wichtig, wie ich brauche nur einen Ort zu bekommen innerhalb eines Satzes) beginnen und dann müssen irgendwie Identifizieren Sie den Satz, in dem der Index auftritt.
Ich bin in der Lage, die Zusammenfassung in Sätze mit nltk.tonenize.sent_tokenize
zu tokenisieren, aber dadurch mache ich die Indexposition unbrauchbar.
Wie soll ich dieses Problem lösen? Ich denke, Regexes sind eine Option, aber der Tokenizer nltk scheint so eine nette Methode zu sein, dass es schade wäre, ihn nicht zu benutzen. Oder den Startindex irgendwie zurücksetzen, indem er die Anzahl der Zeichen seit dem letzten Punkt findet. Ausrufezeichen/Fragezeichen?
Diese wie JSON aussieht. – squiguy
Ja, ich manipuliere Daten von einem API-Endpunkt. – Elise
Es könnte teuer sein, aber Sie könnten durch die Sätze gehen und die Indizes der Sätze von der Länge neu berechnen, dann suchen Sie nach diesem Index – user1937198