表达式不会像它应该的那样运行

时间:2015-12-03 19:50:18

标签: javascript regex

我需要一个表达式,它与任何可能有或没有+或 - 之前的数字相匹配,并且在任何数字之前或之后的任何数字中也可能有或没有小数。 .432423和42343242.有效,但单个小数不是,即使表达式我正在运行一个小数,也通过了我的有效性测试。请告诉我这段代码有什么问题,而不是给我一个答案。谢谢!

var number = /^((\-|\+)?([\d*\.?\d+])|([\d+\.?\d*]))$/;

2 个答案:

答案 0 :(得分:0)

[\d*\.?\d+]匹配该集合中的任何一个字符,因此匹配单个.。删除两对括号使其正常工作。

答案 1 :(得分:0)

看看这个

  

/^([-+]?[.]{1}\d+)|([-+]?\d+[.]{1}\d*)$/

这个你有2个匹配组..首先给你数字[+ - ]。1234 第二个[+ - ] 123. [123]