Auf der Arbeit darf ich derzeit ein Dokument mit viel, viel Text überarbeiten. Am Ende des Berichts gibt es eine Liste aller im Lauftext verwendeten Abkürzungen. Um sicherzugehen, dass der vorherige Autor alle Abkürzungen erwischt und erläutert hat, speicherte ich das Word-Dokument als Plain Text (.txt) ab und liess dann folgendes PowerShell-Skript drüberlaufen:
$source = 'source.txt' $temp = 'acronyms-raw.txt' $result = 'acronyms.txt' $regex = '\b[A-Z]{3,}\b' select-string -Path $source -Pattern $regex -CaseSensitive -AllMatches | % { $_.Matches } | % { $_.Value } > $temp gc $temp | sort | get-unique > $result
Tada! Und schon hatte ich in acronyms.txt eine fein säuberlich, alphabetische Liste aller Abkürzungen, die aus drei oder mehr aufeinanderfolgenden Grossbuchstaben bestehen.