
Ich habe ein Transkript eines dreistündigen Dokumentarfilms, das voller Zitate ist, die ich gerne teilen möchte. Das Transkript ist riesig, es manuell durchzugehen würde also ewig dauern.
Im Grunde möchte ich also einfach den gesamten Text aus dem Transkript entfernen, mit Ausnahme des Textes in Anführungszeichen: „entfernen“, „behalten“, „entfernen“.
Ich bin ziemlich sicher, dass Sie dies in Notepad++ tun können, ich weiß nur nicht, wie. Kann mir bitte jemand helfen?
Antwort1
Die Lösung dieses Problems liegt in der VerwendungRegEx, ein Tool, das Textteile anhand einer Reihe von Regeln abgleicht. Ihre Regeln sind ziemlich einfach – alles zwischen zwei Anführungszeichen abfangen. Ich bin nicht der Beste bei Regex, aber ich habe eine Lösung gefunden, die dem zu entsprechen scheint, wonach Sie suchen.
Ich empfehle die Verwendung vonSublimierenEditor, um dies zu tun - erstens habe ich es in N++ nicht problemlos zum Laufen gebracht und zweitens ist Sublime wirklich großartig!
So extrahieren Sie Ihre Zitate.
- Öffnen Sie in Sublime die Datei, aus der Sie extrahieren möchten.
- Klicken Sie hier
ctrl+f
, um das Suchtool unten auf dem Bildschirm zu öffnen. - Klicken Sie auf die Schaltfläche ganz links im Suchtool mit den
.*
Symbolen. Dadurch wird die RegEx-Übereinstimmung aktiviert. - Geben Sie in der Suchleiste Folgendes ein:
"[^"]+"
- Klicken Sie ganz rechts im Suchtool auf
Find All
- Klicken Sie hier,
ctrl+c
um alle Auswahlen zu kopieren. - Öffnen Sie eine neue Datei und klicken Sie auf ,
ctrl+v
um den gesamten ausgewählten Text einzufügen.
RegEx-Erklärung
Ich werde den Ausdruck in mehrere Teile aufteilen.
"
- Dies beginnt mit der Übereinstimmung mit Text, der mit einem doppelten Anführungszeichen beginnt.
[^"]
- Dies stimmt mit allem Text überein, der kein weiteres doppeltes Anführungszeichen enthält - wichtig, denn wenn wir Anführungszeichen abgleichen würden, würden wir mit der Übereinstimmung mit allem in der Datei nach dem ersten Anführungszeichen beginnen! Nicht das, was wir wollen. Das ^
Symbol ist das Negationszeichen in RegEx - es zeigt an,nichtmit dem nächsten übereinstimmen.
+"
- Zwingt uns, nur Text abzugleichen, der schließlich mit einem weiteren Anführungszeichen endet. Dies verhindert, dass wir beispielsweise das letzte Anführungszeichen im Dokument mit dem Ende des Dokuments abgleichen, und beendet alle zuvor begonnenen Übereinstimmungen, ohne in die Dinge überzulaufen, die wir nicht abgleichen möchten.
Ich kann mir vorstellen, dass es schönere Möglichkeiten gibt, dies zu tun, aber ich gehe auch davon aus, dass dies alles abdeckt, was Sie benötigen. Wenn Sie damit Probleme haben, lassen Sie es mich wissen!
Oh, und als letzte Anmerkung: Einer der Gründe, warum ich Sublime empfehle, ist die Tatsache, dass es mehrere Cursor unterstützt, wodurch es problemlos verschiedene Textteile gleichzeitig auswählen kann. Versuchen Sie, ein Dokument zu öffnen und ctrl+middle click
an einigen verschiedenen Stellen zu tippen, und beginnen Sie dann mit der Eingabe.
Bearbeiten
Haha, ich habe es völlig versäumt, an der offensichtlichsten Stelle in Notepad++ – dem Suchtool – nach integrierten RegEx zu suchen. Sie können es auf die gleiche Weise tun, aber es gab keine schöne Möglichkeit, den gesamten Text auszuwählen. Am einfachsten war es, auf „Alles im aktuellen Dokument suchen“ zu klicken und dann den gesamten im Suchfenster unten generierten Text auszuwählen. Aber das ist nicht so schön, wie Sublime es handhabt.
Antwort2
Versuche dies :
- Strg + H
- Suchen nach: ^(\l+)
- Ersetzen durch: (leer)
- Alles ersetzen