Regulaerer Ausdruck fuer Preise
Marc Nilius
- php
Hallo!
Ich versuche in PHP mit regular expressions eine Preiseingabe zu validieren.
Ich moechte ueberpruefen, ob eine Eingabe folgende Bedingungen erfuellt:
Leider habe ich mich mit regular expressions noch nicht so beschaftigt, habe hier stundenlang rumprobiert und nix funktioniert. ;-)
Irgendwelche Denkanstoesse fuer mich? ;-)
Vielen Dank und Gruesse,
Marc
Moin Moin !
- ein bis 4 Ziffern vor einem Punkt gefolgt von 1 bis 2 Ziffern nach dem Punkt oder
- ein bis 4 Ziffern (kein Punkt, keine Nachkommastellen)
Leider habe ich mich mit regular expressions noch nicht so beschaftigt, habe hier stundenlang rumprobiert und nix funktioniert. ;-)
Code und Ergebnis?
Irgendwelche Denkanstoesse fuer mich? ;-)
RTFM: http://www.php.net/
Übersetze deine Bedingung in zwei RE. Du hast es schon ganz gut formuliert, es ist quasi schon eine RE, nur eben nicht in einer für PHP verständlichen Form.
Es geht auch mit einer RE:
eine bis vier Ziffern, optional gefolgt von einem Punkt und ein bis zwei Ziffern.
Oder dichter an PHP:
eine bis vier Wiederholungen der Zeichenklasse Ziffer, optional gefolgt von folgender Gruppe - ein Punkt, gefolgt von ein bis zwei Wiederholungen der Zeichenklasse Ziffer.
Und um ganz präziese zu sein:
String-Anfang, gefolgt von einer bis vier Wiederholungen der Zeichenklasse Ziffer, optional gefolgt von folgender Gruppe - ein Punkt, gefolgt von ein bis zwei Wiederholungen der Zeichenklasse Ziffer, immer gefolgt vom String-Ende.
Alexander