2013-05-23 10 views
7

Ich habe eine (sehr) große XML-Datei für meine GPS-Spur. Es ist wie folgt aufgebaut:Entfernen Sie die angegebenen Tags in XML (Notepad ++)

<trkpt lat="45.4818095" lon="3.76271898"> 
     <time>2010-08-29T17:20:52Z</time> 
    </trkpt> 
    <trkpt lat="45.48068593" lon="3.762722181"> 
     <time>2010-08-29T17:21:37Z</time> 
    </trkpt> 
    <trkpt lat="45.47923258" lon="3.762515148"> 
     <time>2010-08-29T17:22:35Z</time> 
    </trkpt> 

Ich mag meinen GPS-Track teilen, aber alle Informationen zwischen den <time> und </time> sind nutzlos. Gibt es eine Möglichkeit, diese Tags in Notepad ++ zu löschen?

+0

Suche nach ' * (\ r \ n)' und mit leeren ersetzen. – Noel

Antwort

5

Man konnte immer eine Suche tun und ersetzen:

<time>[0-9A-Z:-]*</time> Suchen und Ersetzen mit leeren (stellen Sie sicher, Reguläre Ausdrücke geprüft wird)


EDIT:

Schnell Klärung dieses ersetzt alles in der Textdatei, die mit <time> beginnt und eine beliebige Anzahl an alphanumerischen Zeichen, Doppelpunkten (:) oder Bindestrichen gefolgt vonenthält 210 Etikett. Wenn Sie die Leerzeichen vor dem Tag entfernen möchten, können Sie stattdessen Folgendes verwenden:

finden [\t ]*<time>[0-9A-Z:-]*</time> ersetzen mit leer.

Wenn Sie die leeren Zeilen übrig bleiben, indem Sie diese entfernen möchten, können Sie die TextFX Plugin mit den meisten Versionen von Notepad ++ enthalten:

TextFX -> TextFX Bearbeiten -> Löschen Leerzeilen

Oder einfach auf erweiterte Suche und suchen nach \n\r

+0

Danke das funktioniert für mich! Aber wenn der Text zwischen einen Punkt (.) Enthält, ist der Befehl zum Ersetzen nicht erfolgreich. –

+2

Wenn Sie nur alle '' Tags löschen möchten, können Sie tun, was @Noel gesagt hat und a finden und ersetzen für '[\ t] * ' das wird alle Zeitmarken loswerden, unabhängig davon, was in ihnen ist. –

4

<time>.*?</time> und es funktionierte perfekt.

enter image description here

Verwandte Themen