(0*\.
(
(00[1-9])
|
(0[1-9]0?)
|
([1-9]0{0,2})
)
)
|
(0*[1-9]+0*\.
(
[0-9]{1,3}
)
)
|
(0*[1-9]+0*\.?)>
Interpretation:
zero or more zeros, a decimal, and 1, 2 or 3 digits at least one of whoch is non-zero
-- OR --
A number before a decimal with at least one non-zero digit, followed by 1, 2 or 3 digits
-- OR --
a number with at least one non-zero digit, which may or may not have a decimal after it, but ends there (no digits past decimal) - i.e. a whole number with or without a decimal point after it |