Thread 1 oder 3 oder 12 der 44 (16 answers)
Opened by chmod777 at 2010-01-20 21:21

sid burn
 2010-01-21 00:52
#130982 #130982
User since
2006-03-29
1520 Artikel
BenutzerIn

user image
Das hat nur das Problem das durch eine Regex der Linke wert auch wie ein String behandelt wird und nicht wie eine Zahl.

Code: (dl )
1
2
3
4
sidburn@sid:~$ perl -MPerl6::Junction=any -wle 'print "1.00" == any(1,2,3) ? "yes" : "no"'
yes
sidburn@sid:~$ perl -wle 'print "1.00" =~ m/^(1|2|3)$/ ? "yes" : "no"'
no


Ansonsten bedeutet "$" in einer Regex "Stringende oder \n vor Stringende". Damit würde auch der String "1\n" gültig sein. Besser wäre \z. Ist alles nur eine Definition wie genau man es haben möchte. Ich bevorzuge bei soetwas dann lieber Sachen der den Wert in einer Zahl forciert wenn das auch das gewünscht verhalten sein soll. Da sich dadurch schnell mal ein Bug einschleichen kann den man nicht so schnell sieht.
Nicht mehr aktiv. Bei Kontakt: ICQ: 404181669 E-Mail: perl@david-raab.de

View full thread 1 oder 3 oder 12 der 44