正则表达式匹配OData查询

时间:2015-02-21 21:31:11

标签: javascript regex

我有以下字符串

(absolute_performance eq 12.2M)

此字符串中唯一的差异是eq可能会被gele替换,而12.2可能是任何十进制数或整数。所以它可以是0,0.1,23,12.34等。

我已经开始使用正则表达式,但不知道其余部分。

\(absolute_performance\seq|ge|le\s([0-9]+)M\)

稍后,我想提取数字,因此围绕它进行括号。

其余部分是什么?

修改

我有,我相信,是答案。这是正确的吗?

\(absolute_performance\seq|ge|le\s([0-9]+(\.[0-9]+)?)M\)

编辑2

以下是基于hwnd建议的改进

\(absolute_performance\s(eq|ge|le)\s([0-9]+(\.[0-9]+)?)M\)

1 个答案:

答案 0 :(得分:1)

您需要使用grouping构造来对变更进行分组。你可以这样写:

\(absolute_performance\s(?:eq|ge|le)\s(\d+(?:\.\d+)?)M\)