Hi,
ich hab ein kleines Verständnissproblem mit den Referenzen bei Regulären-Ausdrücken.
Folgendes möchte ich ereichen.
Ich brauche also eine RegEx die den Text zwischen "http://" und dem ersten "." rausnimmt, eine Zahl dranhängt und wieder einsetzt.
preg_replace() scheint mir geeignet.
Mein Ansatz war folgender;
Wenn ich $zahl weglasse und nur "$1" nutze kommt "thirdlevelexample.com" herraus.
Hier nochmal die benutzte RegEx, weil der BBCode es verschandelt.
$regex = "!http://(\w+)[.]!";
Ich dachte durch die mit den () in der Regex gebe ich den Teil an, der die Referenz bildet und somit nur ersetzt wird.
Any ideas?
ich hab ein kleines Verständnissproblem mit den Referenzen bei Regulären-Ausdrücken.
Folgendes möchte ich ereichen.
PHP-Code:
<?php
$url = "http://thirdlevel.example.com";
//...
echo $url_new; // gibt "http://thirdlevel2.example.com" aus
?>
Ich brauche also eine RegEx die den Text zwischen "http://" und dem ersten "." rausnimmt, eine Zahl dranhängt und wieder einsetzt.
preg_replace() scheint mir geeignet.
Mein Ansatz war folgender;
PHP-Code:
<?php
$url = "http://thirdlevel.example.com";
$zahl = 2;
$regex = "![url]http://[/url](\w+)[.]!";
$url_new = preg_replace($regex, "$1".$zahl, $url);
echo $url_new; // gibt leider nur "example.com" aus.
?>
Hier nochmal die benutzte RegEx, weil der BBCode es verschandelt.
$regex = "!http://(\w+)[.]!";
Ich dachte durch die mit den () in der Regex gebe ich den Teil an, der die Referenz bildet und somit nur ersetzt wird.
Any ideas?
Kommentar