Teilweise Ersetzung (Reg Expressions)
Draganis
- php
Hallo,
bei mir erfolgte folgendes Problem:
ich moechte in einer Zeichenkette alles was zwischen [g] und [/g] steht gross schreiben...
nun dachte ich mir dass dies mit preg_replace() am besten ginge, bin da wohl aber auf die schnauze gefallen, da ich keine Ahnung von regular expressions hab.
als ich bei php.net suchte fand ich auch gleich etwas was ich mit etwas bestehendem (BB-Code) kombinieren wollte...
Was ich fand:
preg_replace ("/(</?)(\w+)([^>]*>)/e",
"'\1'.strtoupper('\2').'\3'",
$html_body);
// Dies soll alle HTML Tags gross anzeigen
Was ich veraenderte:
$message = preg_replace("/[i](.*?)[/i]/si", "<!-- BBCode Start --><I>\1</I><!-- BBCode End -->", $message);
//Dies mach alles zwischen [i] und [/i] italic
Heraus kam:
$message = preg_replace("/[k](.*?)[/k]/e", "<!-- BBCode Start -->".strtolower('\1')."<!-- BBCode End -->", $message);
Nur da ergab sich folgende Fehlermeldung:
<b>Parse error</b>: parse error in <b>C:\inetpub\wwwroot\vwf\comm\include\text.inc.php(188) : regexp code</b> on line <b>1</b><br>
<br>
<b>Fatal error</b>: Failed evaluating code:
<!-- BBCode Start --> HALLLLOOOOO<!-- BBCode End -->
in <b>C:\inetpub\wwwroot\vwf\comm\include\text.inc.php</b> on line <b>188</b><br>
Ich hoffe einer von euch kann mir weiterhelfen.
Entweder mit einem fertigen Code (samt erklaerung wenn moeglich)
Oder einfach mit einer Hilfestellung was RegEx angeht.
Danke im Voraus
Draganis