[linux] Re: [spam=10%] perl vraag

Folkert van Heusden folkert op vanheusden.com
Wo Okt 11 13:22:39 CEST 2006


> > sub isdigit
> > {
> >         if ($_[0] >= '0' && $_[0] <= '9')   # *1
> > Het gekke alleen is nu dat die regel *1 altijd naar true evalueerd!
> > Ziet iemand wat ik fout doe?
> Je doet een string comparison met een numeriek werkende operator, lijkt
> vaak goed te gaan maar toch niet correct. Probeer maar eens met 'le' ipv
> '<=' enz. dat zal wel beter gaan.   Ik neem aan dat je iets complex met
> die regels moet doen zodat je ze niet met een simpel 
>    if (index($str,'?')>=0) 
> kunt testen?

Ik kreeg net op irc de suggestie te doen: if ($_[0] =~ /d+/) en dat
werkt!
Het gekke is dat iets als if (substr($_[0], 0, 1) == '?') ook altijd
true geeft?!


Folkert van Heusden

-- 
Temperature outside:    35.062500, temperature livingroom: 22.4
----------------------------------------------------------------------
Phone: +31-6-41278122, PGP-key: 1F28D8AE, www.vanheusden.com



More information about the Linux mailing list