我有这个字符串:value268_generated_number
我通常这样做:^value.*_generated_number
我将如何匹配我的正则表达式但不匹配这些数字:单词“value”之后的1,10 和 100 ?
例如:
- value1_generated_number
- value10_generated_number
- value100_generated_number
该表达式还应满足生成的最多 50000 的数字。
我有这个字符串:value268_generated_number
我通常这样做:^value.*_generated_number
我将如何匹配我的正则表达式但不匹配这些数字:单词“value”之后的1,10 和 100 ?
例如:
该表达式还应满足生成的最多 50000 的数字。
您可以使用负前瞻:
^value(?!10{0,2}_).*?_generated_number
另请注意,您应该小心使用*
带有 . 的量词.
。它通常比你想要的更多。最好*
用字符类替换,例如\d*
. 为了安全起见,我使量词变得懒惰。
如果您的输入始终为 形式value<digits>_<digits>
,则最终表达式为:
^value(?!10{0,2}_)\d*_\d+$