Seite 1 von 1

Definitionsproblem eines RegExpr filters

Verfasst: 20. November 2008 16:15
von Andy2211
Hallo,
ich habe eine Liste von Strings und möchte prüfen, ob in dem String ein Pfadname (z.B. C:\Test\hallo.c) vorkommt. Der genauere Zweck ist, eine Quelldatei wie hallo.c einem Pfad eindeutig zuweisen zu können, dazu muss sichergestellt sein, dass zwischen dem Pfad und hallo.c kein weiterer Ordner liegt wie z.b. "C:\Test\test2\hallo.c".

Dazu hab ich eine QRegExp benutzt, allerdings vermute ich, dass er bei dem Pfadnamen durcheinander kommt...

Momentan sieht es so aus:

Code: Alles auswählen

	"(directory)([A-Za-z]*)(.c)"
Habe auch schon probiert die \ mit einem weiteren Slash zu ergänzen:

Code: Alles auswählen

directory = directory.replace("\\", "\\\\");

Ohne directory und .c gehts, mit .c hab ich noch nicht getestet, aber sobald ich den Verzeichnisnamen reinmache funktioniert es nicht mehr.

Bin für alles offen.

Gruß,
Andy

Verfasst: 20. November 2008 18:42
von upsala

Code: Alles auswählen

QRegExp rx("^"+QRegExp::escape(directory)+"[A-Za-z]+\.c");

Verfasst: 20. November 2008 21:14
von Andy2211
Hi,
danke das war genau das was ich gebraucht habe :D