我有以下字符串
(absolute_performance eq 12.2M)
此字符串中唯一的差异是eq
可能会被ge
或le
替换,而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\)
答案 0 :(得分:1)
您需要使用grouping构造来对变更进行分组。你可以这样写:
\(absolute_performance\s(?:eq|ge|le)\s(\d+(?:\.\d+)?)M\)