What RegExp should I be using for floats?
Currently, I have /[-+0-9eE.]+/, viz,
require 'test/unit'
class TestFloatRegExp < Test::Unit::TestCase
def test_finds_em
%w{ 1 -2 3.0 0.4 5.0e+5 -6e+06 .7E+7 }.each do |string|
assert( string.match(/[-+0-9eE.]+/), "no match >>#{string}<<" )
end
end
end
···
--
Bil
http://fun3d.larc.nasa.gov
Have a look at the regexp in
perldoc -q float
-- fxn
PS: Your mail client runs on a Mac, that works there.
···
On Aug 15, 2006, at 12:50 AM, Bil Kleb wrote:
What RegExp should I be using for floats?
Currently, I have /[-+0-9eE.]+/, viz,
require 'test/unit'
class TestFloatRegExp < Test::Unit::TestCase
def test_finds_em
%w{ 1 -2 3.0 0.4 5.0e+5 -6e+06 .7E+7 }.each do |string|
assert( string.match(/[-+0-9eE.]+/), "no match >>#{string}<<" )
end
end
end
Xavier Noria wrote:
Have a look at the regexp in
perldoc -q float
/^([+-]?)(?=\d|\.\d)\d*(\.\d*)?([Ee]([+-]?\d+))?$/
Ouch!
Thanks; I think. 
Regards,
···
--
Bil
http://fun3d.larc.nasa.gov
Quick caveat - that's for a c float (as mentioned in that perldoc
snippet). Ruby float (& other numeric) literals allow the underscore
character (with restrictions) as well. So really, it depends on
exactly what you're parsing and why.
-A
···
On 8/16/06, Bil Kleb <Bil.Kleb@nasa.gov> wrote:
Xavier Noria wrote:
> Have a look at the regexp in
>
> perldoc -q float
/^([+-]?)(?=\d|\.\d)\d*(\.\d*)?([Ee]([+-]?\d+))?$/
Ouch!
Thanks; I think. 