Dennis: Kleines Regex Problem

Beitrag lesen

Hi Chrisi,

$links = preg_replace("/href="(.*?)"/e", "'href="'.strtoupper('\1').'"'", $links);

Mal eine andere Frage: Warum willst du eine URL in Großbuchstaben umwandeln lassen? Dadurch wird die URL in 90% aller Fälle ungültig!

Ferner dürfte es hier ein Problem geben, wenn in deinem Text ($links) zwei mal href="" vorkommt - dann wird dieser Regex von dem ersten href=" bis zum letzen " matchen.

Um das zu entgehen, kannst du entweder noch die Modifier U anhänger (ungreedy = ungefräßig) oder statt .* einfach die Zeichenklasse [^"]* verwenden (alle Zeichen außer ").

MfG, Dennis.

--
Mein SelfCode: ie:{ fl:( br:> va:) ls:[ fo:) rl:( n4:# ss:) de:] js:| ch:{ sh:( mo:} zu:|
Wissen ist gut, Können ist besser, aber das Beste und Interessanteste ist der Weg dahin! (Detlef G.)