Ich habe eine Liste von Texteinträgen, die ein Benutzer in die Datenbank eingeben kann, und ich muss diese Eingaben mit regulären Ausdrücken validieren, weil einige von ihnen komplex sind. Eines der Felder muss Lücken in den Zahlen aufweisen (d. H. 10, 12, 14, 16 ...). Meine Frage ist, gibt es ein Regex-Konstrukt, das es mir erlauben würde, nur ungerade oder ungerade Läufe zu vergleichen? Ich weiß, dass ich diesen Wert herausziehen und eine Divisionsprüfung durchführen kann, aber ich habe, wenn möglich, auf eine reine Regex-Lösung gehofft.Regulärer Ausdruck für nur ungerade oder gerade Zahl
[Bearbeiten]
Die Lösung, die ich auf dieser Verwendung beendet wurde, weil eine Anpassung von JaredPar die zusätzlich nur ungerade ist zu benötigen oder nivelliert ich auch durch einen Bereich zu beschränken, benötigt (dh alle geraden Zahlen zwischen 10-40). Unten ist Regex fertig.
^[123] [02468] $
Die {1} 's in Ihrem regex sind wahrscheinlich völlig unnötig, wenn Ihr Regex-Engine kann sich von meiner unterscheiden. –
Dieser Regex wird Zahlen bis zu 48 entsprechen. Wenn Sie es bei 40 begrenzen möchten, benötigen Sie:^[123] [02468] | 40 $ –
Und Chris hat Recht: {1} in einer Regex ist reines Rauschen, nein egal, welchen Regex-Geschmack du verwendest. –