Phillip Oertel a écrit : > hi, > > i'm not a regex guru myself, but the following regex should work - tabke > a look at my regex test setup ... > > <?php > > $test = array( > "1", > "1.", > "1.2", > "1.23", > "1.234", > > "1234", > "1234.", > "1234.5", > "1234.56", > "1234.567" > ); > > > // if there's a dot, we want at least one number after it. > $regex = '/^\d+(.\d{1,2})?$/'; It would be better to escape the point, cause the point greps for everything. $regex = '/^\d+(\.\d{1,2})?$/'; Without escaping the point, it could match for '1234:567' or something else. > // test all or numbers ... > foreach ($test as $number) { > if (preg_match($regex, $number)) { > echo "ok "; > } else { > echo "no "; > } > echo $number . "<br />\n"; > } > > ?> > > i don't think there's a difference between \d and [0-9], but again, i am > no expert ... > > regards, > phillip -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php