regular expression - "Ausdruck nicht gefunden" wie schreiben

TMaske77

Ensign
Registriert
Jan. 2004
Beiträge
146
Hi,

ich brauche jemand der sich mit regular Expressions auskennt.

Ich möchte mit folgendem Programm http://www.digitalvolcano.co.uk/content/textcrawler eine Suchoption schreiben, welche mir alle Dateien findet welche als Interface nicht DDE haben.

Dies ist mir bisher nur bedingt gelungen, kann mir hier jemand helfen.

Danke

Hier die Beispiel-Daten für den Regularexpression - Tester im o.g. Programm
gefunden werden soll die roten Einträge - der grüne nicht

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Beispiel
<Interface>DDE</Interface>
<Interface>DDA</Interface>
<Interface>AAE</Interface>
<Interface>DAE</Interface>
<Interface></Interface>
<Interface>DDEaaaa</Interface>
<Interface>aaaaDDEaaaa</Interface>
<Interface>aaaaDDEaaaa</Interface>
 
<interface>((?!DDE).{3}.*)|(.+DDE.+)</interface>

funktioniert nur, wenn das Programm lookaround unterstützt
 
Nicht schlecht - aber da ist noch ein Fehler..... (rot markiert)

Wenn ich mit dem Programm ein Ersetzen mache - wird aus

<Interface>DDE</Interface>
<Interface>DDA</Interface>
<Interface>AAE</Interface>
<Interface>DAE</Interface>
<Interface></Interface>
<Interface>DDEaaaa</Interface>
<Interface>aaaaDDE</Interface>
<Interface>aaaaDDEaaaa</Interface>
<Interface>abcde</Interface> asdasd

folgendes

<Interface>DDE</Interface>
<Interface>xxx</Interface>
<Interface>xxx</Interface>
<Interface>xxx</Interface>
<Interface>xxx</Interface>
<Interface>DDEaaaa</Interface>
<Interface>xxx</Interface>
<Interface>xxx</Interface>
<Interface>xxx</Interface>
 
okay,

dann nochmal was überarbeitet:
<interface>(((?!DDE).{3}.*)|(.*DDE.+))<\/interface>|(<interface><\/interface>)
 
Ich verstehe nicht, warum nicht einfach ".*\<Interface\>DDE\</Interface\>.*" benutzt wird?
Oder falls du weisst, dass jedes Interface eine eigene Zeile hat:
line.equals("<Interface>DDE</Interface>")
 
TMaske77 möchte alle Einträge außer <Interface>DDE</Interface> und nur innerhalb der Tags ersetzen.

In regulären Ausdrücken ist es schwierig mit Anforderungen wie "suche alles außer...". Geht eigentlich nur mit lookarounds oder sehr komplizierten ODER Konstrukten.

Testen kannst du hier http://regexpal.com/ oder hier http://gskinner.com/RegExr/
Allerdings haben die auch so Ihre Probleme.
 
TMaske77 schrieb:
Ich möchte [...] eine Suchoption schreiben, welche mir alle Dateien findet welche als Interface nicht DDE haben.
Es war nie die Rede davon, irgendwas zu ersetzen?
 
Zurück
Oben