Hallo,
Ich will Reguläre Ausdrücke verwenden, aber die kann ich nicht leicht verstehen. Und zwar z.b folgendes
<?php
$zeichenkette = '15. April 2003';
$suchmuster = '/(\d+). (\w+) (\d+)/i';
$ersetzung = '${2}1,$3';
echo preg_replace($suchmuster, $ersetzung, $zeichenkette);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
April1,2003Wie ich verstanden habe:
Suchmuster besteht aus drei Teilen
(\d+) : also 15
(\w+) : April 200
Nein. \w+ matcht nur April, weil Whitespace kein \w Zeichen sondern ein \W Zeichen ist.
(\d+) : 3
Nein, 2003
dann Bei der Ersetzung
${2} was bedeutet das? für mich wäre 03 die letzte zwei Ziffern
${2} ist $2, Es handelt sich um eine Hilfsangabe.
angenommen du hast.
"hier steht ein$valuevon 100"
Dann weiss der kompiler nicht, ob nun $value oder $valuevon vorliegt
"hier steht ein${value}von 100"
macht es klar, dass wir über $value sprechen.
und dann 1,
und dann $3 bedeutet letzte Referenzierung d.h (\d+) = 3
zusammen kommt für mich 031,3
bestimmte irre ich mich, könnte bitte jemand mir das erklären.
in folge des obigen Fehlers ja.
mfg Beat