Ich versuche, einen regulären Ausdruck zu erstellen, der einem bestimmten Zahlenmuster entspricht.Regex zum Auswerten des Zahlenmusters
Die Muster sind:
123456
1234XX
1234*
Nicht erlaubt sind: A Kombinationen wie: 1234*X
oder 1234X*
oder ein Mehrfaches *
: 1234**
ich diesen Ausdruck schon versucht:
/^[\\+\\#\\*0-9]{0,25}[X]*$/
Aber hier habe ich die multiple *
und 1234*X
als gültige Ausdrücke.
Hat jemand eine Vorstellung von einer richtigen Lösung oder einem Weg zu einer Lösung?
Edit: Ok, ich denke, ich sollte die Regeln aufklären.
sollte die regex beliebige Zahl entsprechen:
+12345
#1234525
Aber auch für Saiten mit einem X
in diesem anpassen.
12345X
12345XX
1234XXXXXX
XXXXXX
Die X
s sollte immer am Ende der Zeichenfolge stehen.
Ein einzelnes *
sollte nur am Ende des Strings erlaubt sein.
1234*
1234556*
1*
Mehrere *
sind nicht erlaubt. Nur eine *
am Ende der Zeichenfolge.
Die Kombination X
und *
ist nicht erlaubt. 1234X*
oder 12345*X
sind nicht erlaubt.
Längenbeschränkung: 0 bis 25 Zeichen.
Wie dieses '^ \ d {4} ..? $'? – Tushar
Sie können verwenden:^\ d {6} | \ d {4} X {2} | \ d {4} \\ * $ –
Versuchen Sie '' ~^(? =. {0,25} $) \ d + [X *] * $ ~ ''oder ['' ~^(? =. {0,25} $) \ d + [X *] {2} $ ~ ''] (https://regex101.com/ r/dZ0sP6/1), aber ich bekomme die Spezifikationen von diesen Beispielen nicht. Bitte ** klären ** die Regeln. –