示例:https://regex101.com/r/n4x91E/1
输入字符串:
"我认为我们必须向某个人指出某些事情,并在此之后向他提出其他一些事情"
我的常规表达:
(point).*(out)
Run Code Online (Sandbox Code Playgroud)
返回错误的结果:
"我认为我们也必须point certain things out to this man, and after that point some other things out对他"
预期结果:
"我认为我们必须point certain things out对这个人,在那之后还有其他一些东西给他"
如何更改我的正则表达式以获得第一组?
您可以在此版本中使用延迟量词作为正则表达式:
https://regex101.com/r/n4x91E/2
(point).*?(out)
Run Code Online (Sandbox Code Playgroud)
在Java文档中,这个量词被称为不情愿,但我认为懒惰更常用...