我需要一个正则表达式来匹配< 10,> = 20等

时间:2014-07-03 07:29:12

标签: javascript regex

基本上,比较运算符后跟(可选空格和)数字。允许小数点。这是我得到的,但似乎没有用。

^(>|>=|<|<=|=|==|!=|<>)[.0-9]+$

所以,应该匹配的例子:

  • &gt; 9
  • &LT; = 10
  • != 20.0

不应匹配的示例:

  • &GT;→2
  • &LT;
  • = 20。

任何帮助表示感谢。

3 个答案:

答案 0 :(得分:2)

你走了:

(((小于|&GT;?!)=)|(=))?\ S \ d +(。\ d +)

http://regex101.com/r/pT6xK6/2

干杯!

答案 1 :(得分:1)

这应该有效

^(>|>=|<|<=|=|==|!=|<>){1}\s?[0-9]+([.][0-9]+)?$

<强>解释

(>|>=|<|<=|=|==|!=|<>){1}&lt; - 匹配其中一个标志

[0-9]+&lt; - 一个或多个号码

([.][0-9]+)?&lt; - 零或更多出现。加上数字

我不使用\d因为匹配[0-9]和其他数字字符,例如东方阿拉伯数字

答案 2 :(得分:0)

尝试使用以下正则表达式匹配比较运算符,后跟(可选空格和)数字

^(?:>|>=|<|<=|=|==|!=|<>)\s?[0-9]+[.]?(?:[0-9]+)?$

DEMO

你是如此亲密。您需要将捕获组设置为非捕获组,并且还必须添加可选空间的模式,即\s?