Hallo Felix.
"http://[a-zA-Z0-9-.]+.[a-zA-Z]{2,4}(/\S*)?$"
[...] Dein tatsächlicher regulärer Ausdruck lautet in JavaScript wie folgt:/http:/
[...] Du musst, mangels alternativer Delimiter, in JS die Slashes also maskieren:
/http:\/\/[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}(\/\S*)?$/
...oder aber den String selbst von Javascript zu einem RegExp-Objekt umwandeln lassen. Dann sind alle nötigen Maskierungen von vornherein enthalten.
Wobei die JS-Engine hierbei erst den String in ein RegExp-Objekt kompilieren muss, was definitiv weniger leistungsschonend ist, als ein RegExp-Literal zu verwenden.
Ich probier's mal ungetestet:
var muster = "http://[a-zA-Z0-9-.]+.[a-zA-Z]{2,4}(/\S*)?$";
var modifier = "gi";
var suchmuster = new RegExp(muster, modifier);
var teststring = "http://..Dackelwackel...blah/meineseite.xml";
alert(teststring.match(suchmuster));
Copy-und-Paste mit vorangestelltem „javascript:“ in meine Adressleiste bestätigt die Funktionstüchtigkeit.
Einen schönen Sonntag noch.
Gruß, Mathias
--
sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
debian/rules