ich einen regulären Ausdruck bauen bin versucht, die keine Zeichen des Formats ersetzt:REGEX für Dezimalzahlen ersetzen
eine beliebige Anzahl von Ziffern, dann optional (Dezimalpunkt, eine beliebige Anzahl von Stellen)
i.e.
123 // 123
123.123 // 123.123
123.123.123a // 123.123123
123a.123 // 123.123
ich verwende ereg_replace in pHP und in der Nähe von einer Arbeits regex ich es geschafft habe, ist
ereg_replace("[^.0-9]+", "", $data);
die fast, was ich brauchen, ist (außer es wird eine beliebige Anzahl von Dezimalstellen erlauben)
i.e.
123.123.123a // 123.123.123
mein nächster Versuch war
ereg_replace("[^0-9]+([^.]?[^0-9]+)?", "", $data);
which was meant to translate as
[^0-9]+ // any number of digits, followed by
( // start of optional segment
[^.]? // decimal point (0 or 1 times) followed by
[^0-9]+ // any number of digits
) // end of optional segment
? // optional segment to occur 0 or 1 times
aber dies scheint nur sonst ein beliebige Anzahl von Ziffern und nichts zu ermöglichen.
Bitte helfen
Dank
ereg_ * Funktionen sind veraltet. Verwenden Sie stattdessen preg_ *. –