Hallo zusammen, Ich habe 1h gegogelt und regexr.com probiert, kriegs aber nicht hin... Ich habe beispielsweise den folgenden Text: "T#10MS" Beim Eintragen in ein TextBox möchte ich prüfen ob die Eingabe in der richtigen Reihenfolge ist. D.h. IsMatch() soll mir true zurückgeben, wenn ich T oder T# eintrage. IsMatch soll false zurück geben wenn das zweite Zeichen ein kein "#" ist oder wenn das dritte Zeichen kein integer ist. Die Eingabe endet mit "MS". kann mir jdm helfen das richtige regex pattern fuer diese Strings zu finden? Gruß
Wie wäre es mit "^T#[0-9].*MS$"? Dürfte vermutlich nicht das sein, was du willst, aber es entspricht deiner Beschreibung. Wichtig sind die Ankerzeichen ^ (Stringanfang) und $ (Stringende).
Zeilanfang ^ Zeilenende $, nix String. T[#]{0,1}\d+MS Welche Programmiersprache.. Es können sich je nach Kompliziertheit zwischen C,Java oder javascript unterschiedliche Matches ergeben.
Also ich verstehe das so, er hat Eingaben, die einem Muster entsprechen:
1 | ^T#?\d+MS$ |
Aber er will nicht wissen, ob es voll übereinstimmt, sondern ob die bereits eingegebenen Zeichen plausibel sind, also in dem Fall eigentlich:
1 | ^(T(#?\d+(MS?)?)?)?$ |
Ich hatte auch schon einmal eine Situation, wo ich im Grunde nicht match vs kein match wissen wollte, sondern kein match, kein match aber plausibler Anfang, match & weitere Eingaben möglich, match & keine weiteren eingaben möglich. Damals hatte ich keine fertig Lösung gefunden, und selbst einen Parser zusammengeschustert. Es würde mich daher auch interessieren, ob es da nicht schon irgendwo eine fertige Lösung gegeben hätte.
Sorry, wenn ich blöd frage, warum sollte jemand so was cryptisches in eine Textbox eingeben müssen?
🐧 DPA 🐧 schrieb: > Also ich verstehe das so, er hat Eingaben, die einem Muster > entsprechen:^T#?\d+MS$ von Zeilenanfang und ende war nicht die Rede.. der die TO möchte nur true oder false auf ein Textmuster haben. Da reicht das von mir oben schon, bzw wie er es geschrieben hat sogar ohne MS. T mal mit mal ohne Raute und ein Integer. einfacher gehts ja nicht.
TotoMitHarry schrieb: > von Zeilenanfang und ende war nicht die Rede.. der die TO möchte nur Doch, doch, sonst könnte man ja irgendwelchen Dummfug vor und/oder hinter der Nummer eingeben. "Du bist doof T#69MS !" soll ja keine erlaubte Eingabe sein. Dafür muss man die Optionen so setzen, dass ^ und $ sich auf die ganze Zeichenkette und nicht nur auf eine Zeile beziehen. Was mir auch noch aufgefallen ist, der Fragesteller hat nicht spezifiziert, welches Ergebnis ein leeres Eingabefeld ergeben soll. Und natürlich ist es auch nicht die ergonomischtse Lösung, ewig gleiche Zeichen immer wieder eintippen zu lassen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.