我正在尝试从字符串中的“hpercent =”中捕获最后一个数字,但前提是它落在1-25的范围内。
示例字符串:
“hpercent”所需的输出: 10,25,2
我试过了:
获取最后一位数字:[^ =] +(?= $)
我的范围仅限数字1-25:^ [1-9] $ | ^ 1 [0-9] $ | ^ 2 ^ 0 [0-5] $
只是不确定如何将上述正则表达式放在一个表达式中
更新:
抱歉,这是非常新的。但我想我需要将最后一个数字作为一组捕获。但正如你可以看到它捕获最后一个数字时它超过了25。
我应该只在1-25之间捕获。
答案 0 :(得分:1)
这应该有效hpercent=([1-9]|1[0-9]|2[0-5])(?![0-9])
扩展
hpercent=
( [1-9] | 1 [0-9] | 2 [0-5] ) # (1)
(?! [0-9] )
由数字范围正则表达式生成器 tool
简化答案 1 :(得分:0)
由于您没有说明您正在使用的正则表达式风格或编程语言,因此使用vim解决方案:
/\v\=(\d|1\d|2[0-5])$/
正在进行什么:
=
和EOL
之间的内容($
)将它转换为你的正则表达式应该很容易。
答案 2 :(得分:0)
将你的正则表达式放在一个表达式中:
/([1-9]|1[0-9]|2[0-5])(?=$)/