JavaScript Reguläre Ausdrücke.
dennis_b
- javascript
Hallo leute,
ich habe ein Problem mit den Regulären Ausdrücken von JavaScript.
Ich wollte feststellen und festlegen das bei einer eingabe einer
Internet Adresse nicht mehr-und weniger(als 3) www´s eingeben werden können.
Ein kleiner auschnitt....wie ich das meine.
*
reg=/w{3,3}/;
if(reg.exec(eingabe))
{
alert("ALLES OK");
}
else
{
alert("Bitte über.......");
}
*
Gebe ich ins Formularfeld jetzt z.b ww.ich@du.de bekomme ich die gewollte Meldung "Bitte überprü.......".
Gebe ich aber z.b wwwww.ich@du.de ein, bekomme ich keine Meldung.
Habe aber doch /w{3,3}/ was doch wie auch in Büchern beschrieben steht
-nicht weniger als 3, und auch nicht mehr als 3- eingegeben.?
Hat einer ein Tipp warum das nicht geht.?
Danke @all
gudn tach!
reg=/w{3,3}/;
um genau drei 'w' zu matchen kannst du z.b. schreiben
/w{3,3}/ oder kuerzer /w{3}/
oder noch kuerzer /www/
du machst damit aber noch keine aussage ueber die zeichen, die vor oder nach den drei 'w' stehen.
es matchen also z.b.
'foowwbar' nicht, weil 'www' nicht vorkommt,
'foowwwbar', weil 'www' vorkommt,
'foowwwwbar', weil 'www' vorkommt.
aaaalso:
/[^w]www[^w]/
oder
/[^w]w{3}[^w]/
oder (unueblich)
/[^w]w{3,3}[^w]/
prost
seth
Hallo dennis_b.
if(reg.exec(eingabe))
Hier solltest du lieber die sparsamere test-Methode anwenden.
Einen schönen Mittwoch noch.
Gruß, Ashura
Warum nicht sowas in der Art, wenn du genau weisst, dass es eh eine Adresse wird, die mit www. angeht.
/^(http://){0,1}w{3}..*$/
Das sollte genau auf ein http://www.irgendwassonstdahinter oder www.irgendwassonstdahinter matchen.
Gruß Ben