Regexp problem. Teile des des Ausdruckes als dyn. String
Joschua Brunner
- javascript
Hallo Leute,
ich habe ein kleines Cleanup Script welches einem Benutzer bequem ermöglicht HTML Tags aus einem artikel zu entfehrnen.
_______________________
[] Zeilenvorschübe <br>
[] Absätze <p>
[] Bilder <img>
[] usw.
_______________________
Die ausgewählten optionen erhält die funktion als Array und wandelt sie mit:
| var FormRegExp = TagsArray.join("|");
in eine String um.
So,
Ab hier klemmts. ;-)
Beide Varianten:
| return return strHTML.replace(/<(/?)(FormRegExp)[^>]*>/gi, "");
und
| return return strHTML.replace("/<(/?)("+FormRegExp+")[^>]*>/gi", "");
funktionieren nicht. :-(
Manuell würde es funktionieren:
| return return strHTML.replace(/<(/?)(font|img|div)[^>]*>/gi, "");
Hat mir wer ein Tipp?
Demo: http://www.webpublish.ch/forum/regexp.htm
(Beim Demo ist die manuelle variante ausgewählt [font|span|div|br])
Herzlichen Dank
Joschua
gruss Joschua,
javascript kennt einen konstruktor fuer
regulaere ausdruecke - "new RegExp";
regExpression = new RegExp("<(/?)("+FormRegExp+")[^>]*>","gi");
alert(regExpression); /* hier laesst Du Dir anzeigen, ob der
ausdruck stimmt - ich weiss naemlich gerade nicht, ob bei der
verwendung des konstruktors die maskierenden "" nicht auch noch
maskiert werden muessen ("\") */
return strHTML.replace(regExpression,"");
by(t)e by(t)e - peterS. - pseliger@gmx.net
Hallo Peter
javascript kennt einen konstruktor fuer
regulaere ausdruecke - "new RegExp";
Herzlichen Dank!
funktioniert wunderbar :-)
ausdruck stimmt - ich weiss naemlich gerade nicht, ob bei der
verwendung des konstruktors die maskierenden "" nicht auch noch
maskiert werden muessen ("\") */
müssen nicht maskiert werden.
Danke
Joschua