Wenn ich beispielsweise ein Dokument untersuche, bei dem es sich um einen Roman oder eine Belletristik handelt, frage ich mich, ob ich alle Dialoge erhalten kann. Denn sie haben das gleiche Format, wie „Was für ein schöner Tag!“ und „Hallo!“, die auf zwei Anführungszeichen beschränkt sind.
Antwort1
Sie können VBA verwenden, um den Vorgang zu automatisieren.
- Öffnen Sie das Dokument.
- Drücken Sie Alt+F11, um den VBA-Editor zu öffnen.
- Kopieren Sie den untenstehenden Code und fügen Sie ihn ein.
- Wenn sich der Cursor im Code befindet, drücken Sie F5, um ihn auszuführen. Ein neues Fenster mit den extrahierten Dialogen wird geöffnet.
Sub GetDialogues()
Dim coll As New Collection
Dim regEx As RegExp
Dim allMatches As MatchCollection
Set regEx = New RegExp
With regEx
.IgnoreCase = False
.MultiLine = True
.Global = True 'Look for all matches
.Pattern = """.+?""" 'Pattern to look for
End With
Set allMatches = regEx.Execute(ActiveDocument.Content.Text)
For Each Item In allMatches
coll.Add Item 'Add found items to the collection
Next Item
Dim newdoc As Document
Set newdoc = Documents.Add 'Add a new Word document
newdoc.Activate 'Activate the document
For Each Item In coll
newdoc.Content.Text = newdoc.Content.Text + Item 'Add each item (quote) to the document
Next Item
newdoc.SaveAs FileName:="test.txt", Fileformat:=wdFormatPlainText 'Save the document as plain text
End Sub