我需要做一个正则表达式来匹配浮点数,我得到的是以下内容:
[\-\+]?[0-9]*(\.[0-9]+)?
但这场比赛也在下面 123123132, 1994年5月3日
我只需要将数字与小数点匹配
答案 0 :(得分:3)
你的正则表达式几乎是正确的。
找到123123132
,因为最后一部分是可选的。删除?
解决了这个问题。
[-+]?[0-9]*(\.[0-9]+)
通过该调整,它仍然可以在.12/39/3239
等字符串中找到匹配项,如果您不希望这种情况发生,请通过插入^
和{{1}在整个字符串上插入强制匹配}:
$
答案 1 :(得分:0)
答案 2 :(得分:0)
这是一个regexp处理现有的 exponents :
[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?
此外,您应该强制匹配孔串以避免在日期值内匹配。
^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$
顺便说一下,这里有一个关于使用正则表达式匹配浮点数的好教程:http://www.regular-expressions.info/floatingpoint.html。