Regex - Mehrere Werte durch Kommata trennen
lima-city → Forum → Programmiersprachen → Sonstige Programmiersprachen
adresse
array
aufwand
benutzen
code
eingabe
element
feld
formular
hilfe
komma
leute
nehmen
server
spart
stern
string
test
-
Hallo Leute :)
Ich bastel gerade an einem Formular mit Eingabevalidierung und möchte in einem Feld prüfen, dass z.B. die Eingabe einer MAC-Adresse entspricht. Das realisiere ich mit dem jquery validation plugin.
Meine Regex für die MAC Adressen Prüfung:
/^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$|^([0-9A-Fa-f]{12})$/.test(a)
So kann eine Adresse mit - und : oder ohne Trennzeichen eingetragen werden.
Jetzt möchte ich aber, dass die Möglichkeit besteht durch Kommata mehrere MAC Adressen einzutragen, dies aber nicht unbedingt nötig ist. Also kann auch nur eine eingetragen werden.
Wie setze ich das am besten um? Vielen Dank für eure Hilfe!!
LG Benni -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Du kannst es natürlich wie tchab machen. Die andere Möglichkeit wäre, den ganzen regulären String, den du schon hast "deinRegex" zu nehmen und folgendes zu machen:
DeinRegex(\,DeinRegex)*
Dieser reguläre String fragt quasi ab: Handelt es sich bei der Eingabe um eine MAC-Adresse und kommt nach dieser MAC-Adresse noch beliebig oft (auch 0-Mal, das symbolisiert der Stern) ein Komma (\,) mit einer MAC-Adresse dahinter.
mfg
Jonas -
ich hoffe du denkst daran das die prüfung nur browserseitig stattfindet (es ei denn du benutzt es serverseitig mit nodejs)... also wäre das rein als usability zu sehen und ohne sicherheitsrelevanten wert
-
Naja das praktische am Regex ist ja, dass man den serverseitig eben wiederverwenden kann. Php unterstützt reguläre Ausdrücke ja mit preg_match.
mfg
Jonas -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage