0

我有以下字符串<=10 & <20,我想拆分这个字符串,所以它给出了以下结果('<=' '10' '<' '20'), & 是无关紧要的,因为我在代码的不同区域处理它!

这是正数时我的解决方案

.match(/(([<=>]+)|(\d+))/ig)- 结果:'<=' '10' '<' '20'

但是字符串也可以有负数 <=-10 & <-20 并且需要的结果是('<=' '-10' '<' '-20'). 那么我将如何更新上面的 .match 来处理这两种情况。

4

2 回答 2

3

添加一个-with?使其在数字前可选:(/([<=>]+|-?\d+)/ig删除不必要的括号)

于 2013-08-16T14:11:20.720 回答
2

只需将减号添加到正则表达式:

"<=-10 & <-20".match(/(([<=>]+)|(-*\d+))/ig)

给出结果

["<=", "-10", "<", "-20"]
于 2013-08-16T14:12:09.820 回答