Tom: Regular Expression kaputt gespielt

Beitrag lesen

Hello,

Fall einfach den letzten Teil auch Klammern und mit preg_match auslesen.

Ich hab noch damit herumprobiert, aber krieg das Gewünschte  nicht hin...

Es soll nur '13,4g' rauskommen

$string  = 'Für die Sauce nehmen wir 13,4g Käse vom alten Gouda';
$pattern = '#([\d]+)((,|.)([\d]+))?(\s*.+)?#';
$backref = '\1.\4 \5';

$ergebnis = preg_replace($pattern, $backref, $string);

Ausgabe:

string: Für die Sauce nehmen wir 13,4g Käse vom alten Gouda
pattern: #([\d]+)((,|.)([\d]+))?(\s*.+)?#
backref: \1.\4 \5
ergebnis:Für die Sauce nehmen wir 13.4 g Käse vom alten Gouda

Harzliche Grüße vom Berg
http://bergpost.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau
Ein Jammer ist auch, dass die Dummen so selbstsicher und die Klugen voller Zweifel sind. Das sollte uns häufiger zweifeln lassen :-)