Hallo an alle,
ich habe zur Zeit ein Problem mit preg_replace().
Ich glaube ich habe da noch einiges nicht verstanden
Also ich habe in jeder Datei eine Pfadangabe. Die sieht ungefähr so aus:
$pfad = "/index.php?go=1";
dabei ist natürlich der Dateiname und der Variablenname ($go)
varibel.
Aus diesem String möchte ich jetzt allerdings nur den Dateinamen auslesen.
Das soll dann so aussehen:
$pfad = "/index.php";
also habe ich mich mal wieder an RegExp herangewagt.
Das Ergebniss sieht bei mir so aus:
PHP-Code:
$pfad = "/index.php?go=1";
$pfad = preg_replace("/\/([a-z])\.([a-z]{3})\?([a-z])\=([1-9]{1})/", "$1.$2", $pfad );
echo $pfad;
leider, leider, leider funktioniert das nicht.
Ich erkläre vielleicht mal meinen Ansatz.
Als erstes maskiere ich "/". Dann kommt ja eine Zeichenfolge von Kleinbuchstaben "([a-z])" (hier ist mir schon nicht klar, ob ich eine Länge des Strings angeben muss).
Als nächstes maskiere ich den Punkt "\."
Jetzt kommt eine dreistellige Zeichenfolge (könnte ja auch "htm" sein).
Dann der Fragezeichen "\?" und wieder eine beliebige Menge von Kleinbuchstaben.
Ich hoffe, das ist erstmal richtig so?
Jetzt weis ich allerding noch nicht, wie ich diesen Sting in ein Array teile?
Wie gesagt, ich habe hier einiges noch nicht verstanden
und hoffe (wie immer) auf Hilfe.
mfg Nico