在正则表达式中拆分变量值

时间:2011-09-25 09:02:01

标签: javascript regex

我正在使用Javascript正则表达式函数来分割表达式:

var1=32
var2<var4
var1!=var3

我正在使用这个正则表达式:

/^(.*)([=|!=|<|>])(.*)$/ig

除了!=(不同)运算符之外,它的效果非常好。有什么问题?

1 个答案:

答案 0 :(得分:6)

问题是您使用的是character class而不是alternation。表达式[=|!=|<|>]相当于[<>=!|]。移除[]即可获得所需内容。

/^(.*?)(!=|=|<|>)(.*)$/ig

我还将第一个(。*)更改为非贪婪,以便它不会消耗!中的!=。如果您知道左侧和右侧表达式将始终仅包含(例如)仅字母数字字符,则最好指定它而不是与点匹配。