
Ich möchte führende und nachfolgende Tags aus Ländernamen entfernen.
In meinem Beispiel sind diese Tags <li>
und <a>
.
<li><a href="http://afghanistan.makaan.com/">Afghanistan</a></li>
<li><a href="http://albanie.makaan.com/">Albanie</a></li>
<li><a href="http://algérie.makaan.com/">Algérie</a></li>
Das Ergebnis sollte sein:
Afghanistan
Albanie
Algérie
In Microsoft Word möchte ich dieSuchen und ErsetzenFunktion, um dies mit regulären Ausdrücken zu erreichen.
Wie kann ich reguläre Ausdrücke in MS Word verwenden?
Antwort1
Anstatt Ihren Eingabetext in Word zu kopieren, kopieren Sie ihn in Notepad++ oder einen anderen Editor mit vollständiger RegEx-Unterstützung.
Ein RegEx-String wäre zum Auswählen von allem außerhalb der Tags oder allem zwischen den Zeichen >
und .<
(?<=>).*?(?=<)
(?<=>)
ist einSchau hinter dich. Es sucht nach>
Zeichen und fungiert als Anker. Auf diese Weise können Sie die Suchzeichenfolge ausschließen, was wichtig ist, da Sie nicht möchten<Afghanistan
.*?
ist einfauler Quantifiziererund wählt alles bis zum nächsten Ausdruck aus(?=<)
ist einSchau vorausund sucht nach einem<
Zeichen, schließt aber das gesuchte Zeichen selbst aus. Genau wie der Blick hinter
AberSie möchten die Ländernamen nicht auswählen. Sie möchten alle Tags entfernen. Sie benötigen das Gegenteil des ersten regulären Ausdrucks. So etwas wie
<.*?>
- Öffnen Sie den Suchen- und Ersetzen-Dialog von Notepad++
- WählenVerwenden regulärer Ausdrücke
- Finde was:
<.*?>
- Ersetzen durch: nichts
Antwort2
Dies ist ganz einfach in MS Word möglich.Suchen und Ersetzen, ohne Regex, ohne JavaScript usw.
Wenn Sie eine Klammer umgehen, wird das eigentliche Klammerzeichen gefunden. Wenn also Platzhalter aktiviert sind, \<*\\>
findet der Ausdruck alles zwischen spitzen Klammern. Ersetzen Sie das einfach durch nichts.
Antwort3
Dassieht aus, als wäre es das, was Sie brauchen.
Angesichts des letzten Kommentars (dass Sie es nur in JavaScript möchten) würde ich irgendwo suchen wieHier
Wenn Sie das in einer SQL-Datenbank möchten, würde ich wahrscheinlich einfach ein paar Zeilen Perl schreiben, um Ihnen die Liste aus dem reinen JavaScript zu geben. Soweit ich das beurteilen kann, kommt MS Word dabei nicht in Frage.
Antwort4
Ich würde dafür nicht die Funktion Suchen/Ersetzen verwenden. Am einfachsten wäre es, für diese Aufgabe „Text in Spalten“ in Excel zu verwenden. Wählen Sie dazu die Spalte mit dem Text aus, gehen Sie zur Multifunktionsleiste „Daten“ und wählen Sie „Text in Spalten“. Sie müssen dies zweimal tun, einmal, um den gesamten Text vor dem Ländernamen zu entfernen (das Trennzeichen wäre ">" – löschen Sie unbedingt die überflüssigen Spalten, um Verwirrung zu vermeiden) und einmal, um den Text nach dem Namen zu entfernen (das Trennzeichen wäre „<“).