Zum Inhalt springen

Reguläre Ausdrücke

Erstellt am 22. Dezember 2004 · 1 Antwort · letzte Antwort am 27. Januar 2005

Tags: Frage

mcfist ·

Hallo zusammen!

Ich bastell gerade an einer Extension in der ich unter anderem ein Suche integriert habe.
Die Suche soll die gefundenen Worte farblich kennzeichnen.

Soweit kein Problem dachte ich und hab einfach den entsprechenden String ersetzt...
Problem ist jetzt aber das Text der zwischen oder in bestimmten Tags steht, auf ersetzt wird.

Beispiel:
test soll durch blubb ersetzt werden

Die ist ein <a href="http://www.bla.de/test/">test</a>

wird zu:
Die ist ein <a href="http://www.bla.de/blubb/">blubb</a>

Wie kriege ich es mittels eines regulären Ausdrucks - oder wie auch immer - hin, dass das Wort test nicht innerhalb des <a> Tags ersetzt wird, sondern nur ausserhalb ...

Ideen?

Danke und Gruß
Christian

AndiB ·
<?
	$test = '<a href="http://www.bla.de/test/">test</a>';

	$test = preg_replace('/(<[^<>]*>)[^<>]*(</a>)/', "\1blubb\2", $test);
?>