Regulärer Audruck soll nur Zahlen und Punkt finden

tequito

Mitglied
Hallo,

ich versuche schon seit Stunden hinter reguläre Ausdrücke zu kommen, aber ich verstehe sie einfach nicht.

Ich möchte von einer Zeichenkette, dass sie nur Zahlen oder Punkte enthalten darf und weder mit einem Punkt anfängt oder aufhört.

Das einzige was halbwegs ging war das hier, aber es geht immer noch nicht und ist fehlerhaft: :(

PHP:
preg_match( '/[0-9\.^]+$/', $string, $treffer)

Wer weiß wie ein regulärer Ausdruck aussehen muss, um obiges zu erfüllen?
 
Hallo,
also bei mir funktioniert es folgendermaßen:
PHP:
<?php
   preg_match("/(^[0-9]+[0-9.]*[0-9]+$)/", $string, $treffer);
   
   print_r($treffer);
?>
am Anfang sollen also nur Zahlen stehen "^[0-9]+ " und das mindestens einmal, das bewirkt das "+" im folgenden können Zahlen und Punkte vorkommen "[0-9.]*", einmal, keinmal oder beliebigoft, das bewirkt das "*". Am ende sollen ebenfalls nur noch Zahlen auftauchen: das gleiche wie am Anfang nur mit einem "$" am Ende an Stelle des "^" am Anfang der eckigen Klammern.

evtl. weißt du das ja alles schon, doch wenn nicht, dann hoffe ich, dass es dir geholfen hat.

Gv nepda
 
Stark, das klappt! *freu*

Auch nach 10x hinschauen verstehe ich noch nicht so ganz die Syntax mit diesen ^, + und $ aber ich bleib an dem Thema dran. Hoffe ich raff das baldmöglichst auch mal.
 
Joa, ich habe auch einige Zeit damit verbringen müssen, bis ich das so richtig verstanden habe, mal abgesehen davon, dass ich immer noch an machen Stellen den mächtigen Herrn Google.de fragen muss :rolleyes:

Als Einstiegs, bzw. Nachschlagewerk im Netz benutze ich oft das Tutorial auf php-resource.de.

Viel Spaß damit ;)
 
Zurück