Variablen überprüfen, ob jedes Zeichen eine Zahl ist ?!
Rainer Honsch
- perl
Hallo !
Ich würde gerne überprüfen, ob eine Variable nur Zahlen enthält ?!
Ich weiß, daß ich z.B. mit:
if ($var =~ /[1]{1,2}/)
prüfen kann, ob die ersten beiden stellen Zahlen sind, doch da ich nie weiß, wieviele Stellen die Zahl hat, geht das nicht ?! Wie knn ich sichergehen, daß vom ersten bis zum kletzten Zeichen es nur Zahlen sind ?
Vielen Dank.
Rainer
0-9 ↩︎
Hi
if ($var =~ /[\d+]/)
wuerde ich nu mal versuchen. Bin jetz nich so ganz in der Materie...
CU
speedy
Hi Cheatah!
/^-?\d+(?!.\d+)?$/
Warum '(?!' ? So darf .\d+ eben *nicht* mehr folgen. Sollte doch '(?:' sein oder? Also
/^-?\d+(?:.\d+)?$/
'(?=' duerfte auch gehen.
Wenn man die komische deutsche Notation mit Komma beruecksichtigen will, dann eben
/^-?\d+(?:[.,]\d+)?$/
So long
Hi,
Warum '(?!' ? So darf .\d+ eben *nicht* mehr folgen. Sollte doch '(?:' sein oder? Also
äh... ja, genau, danke :-)
Cheatah
Hallo !
Ich würde gerne überprüfen, ob eine Variable nur Zahlen enthält ?!
Ich weiß, daß ich z.B. mit:
if ($var =~ /[1]{1,2}/)prüfen kann, ob die ersten beiden stellen Zahlen sind, doch da ich nie weiß, wieviele Stellen die Zahl hat, geht das nicht ?! Wie knn ich sichergehen, daß vom ersten bis zum kletzten Zeichen es nur Zahlen sind ?
Vielen Dank.
Rainer
hi,
ohne Regex gehts auch
einfach mit 1 multiplizieren und nachschauen ob der Inhalt ungleich 0 ist.
klaus
0-9 ↩︎