aspe credo di aver capito, la tua regexp funziona ma l'hai postata senza i delimitatori di inizio e fine stringa.
se li aggiungo, funziona anche a me:

codice:
^[0-9]*(.[0-9]*)?$