Davic: Problem mit ForEach-Schleife und Regex.

Beitrag lesen

Hi!

Könnt ihr mir vielleicht sagen, was an dieser Funktion falsch ist?

function hervorheben($text) {
 $woerter = array(' gynomastie ', ' (b|tr)izeps ', 'testo');
 for($i=0; $i<count($woerter); $i++) {
  $textneu = preg_replace('/((<[^>]*)|'.$woerter[$i].')/ie', '"\2"=="\1"? "\1":"<b>\1</b>"', $text);
 }
 return $textneu;
}

Das Problem ist, dass sich garnichts tut. Er gibt also nur $text anstatt der formatierten Variable $textneu aus.

Zur Info: $text enthält auch HTML-Elemente, welche vom Regex nicht angerührt werden dürfen. Aber das sieht der Regex Experte sicher selbst... ;)

Hoffe auf Hilfe, vielen Dank!