Regulärer Ausdruck, ich blicks nicht
linacaro
- php
Hallo,
ich bin ein Neuling mit regulären Ausdrücken in PHP und möchte folgendes machen:
In meinem String $str sollen alle Vorkommen von "[red]" durch "<span style="color:rgb(130,12,22);">" und alle Vorkommen von "[/red]" durch "</span>" ersetzt werden.
Wie sähe denn da die passende Funktion für aus? Hab mir die Anleitung zu regulären Ausdrücken angeschaut, aber blicke da irgendwie gar nichts, bzw. kann sie nicht auf meine Sachen anpassen.
Wäre sehr Dankbar für Hilfe!
Grüßli
Caro
Hallo linacaro,
Wie sähe denn da die passende Funktion für aus? Hab mir die Anleitung zu regulären Ausdrücken angeschaut, aber blicke da irgendwie gar nichts, bzw. kann sie nicht auf meine Sachen anpassen.
Äh, ungefähr so?!:
preg_replace( "[red]", "<span style=\"color:red\">", $str );
1. Dafür könnten u.U. einfache Stringfunktionen praktischer sein.
2. Eine ausgezeichnete PHP-Klasse zum Parsen von BBCode gibt´s schon.
Beste Grüße
Hello out there!
In meinem String $str sollen alle Vorkommen von "[red]" durch "<span style="color:rgb(130,12,22);">" und alle Vorkommen von "[/red]" durch "</span>" ersetzt werden.
Warum willst du so ein Gemansche in der HTML-Ausgabe haben?
Statt
'Lorem ipsum <span style="color:rgb(130,12,22);">dolor</span> sit amet'
sollte der Code so aussehen:
'Lorem ipsum <em class="foo">dolor</em> sit amet'
Und im Stylesheet gibst du die Formatierung an:
.foo {
font-style: inherit;
color: rgb(130,12,22);
]
Wie sähe denn da die passende Funktion für aus? Hab mir die Anleitung zu regulären Ausdrücken angeschaut,
Brauchst du hier gar nicht, da dein Suchmuster fest ist. str_replace() tut’s auch.
See ya up the road,
Gunnar