wxRegEx Problems
-
Hallo zusammen,
ich versuche gerade eine Telefonnummer mit einer wxRegEx Anweisung auszulesen.
Ich z.B. folgenden wxString der zu lesen ist :
wxString myWxString = _T("+49[0]9621 55 88 99 20 - 3")
Nun möchte ich das der gesamte string in der GetMatch-Funktion zurück gegeben wird.
Wenn ich folgende Codezeile benutze:
wxRegEx myReg(_T("([0-9 \\(\\)\[\\+\\-]+)"));
bekomme ich folgendes Ergebnis
+49[0
was für diesen RegEx auch richtig ist.Wenn ich jetzt allerdings den Code wie folgt abändere, um ihm zu sagen das auch ']' erlaubt ist:
wxRegEx myReg(_T("([0-9 \]\\(\\)\[\\+\\-]+)"));
Bricht er beim aufruf der Funktion
myReg.Matches(myWxString)
ab.
Hatt jemand eine Idee woran das liegen kann. Kann ich ] nicht mit einem \\ deklariern. Funktioniert ja bei \[ auch ohne Probleme.
Thx
-
Benutzt du wxRE_ADVANCED?
-
Habe
wxRE_EXTENDED, wxRE_ADVANCED, wxRE_DEFAULT
getestet funktioniert bei keiner so.... LeiderHabe das jetzt so gelößt
wxRegEx myReg(_T("^([0-9]|\\+|\\-|\[|\]|\\(|\\)|/| ])+$"));
Das überprüfen ob der String nur gültige zeichen enthält erledigt nun die
FunktionwxRegEx myReg(_T("^([0-9]|\\+|\\-|\[|\]|\\(|\\)|/| ])+$")); if (myReg.Matches(numberToVerify)) { return true; } return false;
So funktioniert es auf jeden Fall. Vermute mal das es irgendwo nicht möglich ist innerhalb von [ .. ] ein
\\\]
zu deklariern...Thx