wahsaga: RegExp: Merkwürdiges Verhalten des IE bei replace

Beitrag lesen

hi,

ieValue = ieValue.replace(/<([A-Z]+)([^>]*?)>/ig, "$1".toLowerCase());
Der Ausdruck ist nicht sonderlich komplex und matcht auch.
Allerdings weigert sich der IE, die gefundenen Elementnamen durch die kleingeschriebene Version ("$1".toLowerCase()) zu ersetzen.

ich würde mal vermuten, dass hier die zwei dinge nicht in der reihenfolge geschehen, die du gerne hättest.

"$1" wird vermutlich in lowercase umgewandelt, bevor überhaupt replaced wird - und die "kleinschreibweise" von $1 ist ... nun ja, $1.

innerhalb von replace() auf diese weise weitere JS-funktionen einzubinden, ist m.E. wenig sinnvoll, und "funktioniert" nicht wie gewünscht.

Testweise habe ich es einmal mit dem Ausdruck:
...
versucht.

ja, hier das ganze von oben drüber nochmal zwischen zu kopieren, macht ein posting um vieles lesbarer :-)

gruß,
wahsaga

--
"Look, that's why there's rules, understand? So that you _think_ before you break 'em."