2016-09-29 4 views
-1

Hat jemand einen Rat zum Entfernen von Trennzeichen von Split-Anführungszeichen in einem Stück Text? Ich benutze Python und bin immer noch ein Anfänger.Splitting-Anführungszeichen

Zum Beispiel "Nun," er sagte, "Ich nehme an, ich könnte eine Pause machen." In diesem Beispiel ist das kursiv geschriebene "er sagte" das Trennzeichen und muss entfernt werden. Dann muss das Zitat als eine Zeichenfolge in Zitaten gesehen werden wie: "Nun, ich nehme an, ich könnte eine Pause machen." Ich konnte noch keinen ähnlichen Code finden und hoffte, dass jemand mich in die richtige Richtung lenken könnte.

Danke!

+0

Sie Kann String ersetzen "" sagte er, nein? –

+0

sieht aus wie eine hübsche grundlegende Regex – njzk2

+1

Es ist nicht klar, was die Eingabedaten (ein Absatz von Text, ein ganzes Buch, eine Liste von Sätzen, eine Liste von Textzeilen?) Noch was damit getan werden soll. Es könnte von der Entfernung alles zwischen dem zweiten und dritten Zitat und einem vollständigen [NLP] (https://en.wikipedia.org/wiki/Natural_language_processing) reichen. – zvone

Antwort

2

Um innerhalb " in Ihrem angegebenen String den Inhalt nur zu erhalten, können Sie re Bibliothek verwenden, wie:

import re 
my_string = '"Well," he said, "I suppose I could take a break."' 
quoted_string = re.findall(r'\".*?\"', my_string) 
# 'quoted_string' is -> ['"Well,"', '"I suppose I could take a break."'] 
new_string = ''.join(quoted_string).replace('"', '') 
# 'new_string' is -> 'Well, I suppose I could take a break.' 

Sie das gleiche schreiben können als Einzeiler wie:

''.join(re.findall(r'\".*?\"', my_string)).replace('"', '')