RegEx in JavaScript
Wieso ist der Rückgabewert von (/[0-9a-zA-Z]/ bei der Eingabe von Buchstaben mit Sonderzeichen true?
Hallo Zusammen
Ich habe ein Problem in JavaScript mit RegEx. Folgender RegEx habe ich in einer if- Abfrage:
if(text1.match(/[0-9a-zA-Z]/))
Ziel ist es den text1 zu filter, dass nur Zahlen und Buchstaben erlaubt sind. Aus mir schleierhaften Gründen wird auch bei einer Eingabe mit Sonderzeichen true zurückgegeben.
Bsp:
Abcd = true
Acb3 =true
Acd* =true (Wieso das?
/&)*=false
Der Wert text1 wird aus einem HTML-Formular eingelesen und über einen Methodenaufruf übergeben. Wieso wird Acd* als true dargestellt?
Vielen Dank für eure Hilfe.
Lg
Sy-Br34k3r
Ich habe ein Problem in JavaScript mit RegEx. Folgender RegEx habe ich in einer if- Abfrage:
if(text1.match(/[0-9a-zA-Z]/))
Ziel ist es den text1 zu filter, dass nur Zahlen und Buchstaben erlaubt sind. Aus mir schleierhaften Gründen wird auch bei einer Eingabe mit Sonderzeichen true zurückgegeben.
Bsp:
Abcd = true
Acb3 =true
Acd* =true (Wieso das?
/&)*=false
Der Wert text1 wird aus einem HTML-Formular eingelesen und über einen Methodenaufruf übergeben. Wieso wird Acd* als true dargestellt?
Vielen Dank für eure Hilfe.
Lg
Sy-Br34k3r
Please also mark the comments that contributed to the solution of the article
Content-Key: 113341
Url: https://administrator.de/contentid/113341
Printed on: April 19, 2024 at 06:04 o'clock
2 Comments
Latest comment
Weil du keinen Bereich für den Match angegeben hast.
Wenn du die Regel /[0-9a-zA-Z]/ und den String "Keks" hast matcht die RegEx bei "K" und wird beendet.
Wenn du den String "Äha" hast matcht die RegEx beim "h" und ist fertig.
Was du brauchst ist:
(nicht getestet)
Du könntest natürlich auch den Match so umdrehen, dass er zutrifft wenn er ein nichtalphanumerisches Zeichen findet:
(nicht getestet)
Grüße
Max
Wenn du die Regel /[0-9a-zA-Z]/ und den String "Keks" hast matcht die RegEx bei "K" und wird beendet.
Wenn du den String "Äha" hast matcht die RegEx beim "h" und ist fertig.
Was du brauchst ist:
/^[0-9a-zA-Z]+$/
Du könntest natürlich auch den Match so umdrehen, dass er zutrifft wenn er ein nichtalphanumerisches Zeichen findet:
/[^0-9a-zA-Z]/
Grüße
Max