我正在尝试提取文本"这是我想要的文本";摘自下面的文字。问题是我的正则表达式不是在第一次出现stop时停止,而是第二次。第一部分,向后看在那里,因为第一段文字不一定要在那里。正确的表达是什么?
文本:
test1 THIS IS TEXT I WANT stop but THIS IS another TEXT stop and THIS IS more
正则表达式:
(?<=test1).*stop
当前不期望输出:
这是文本,我想要停止,但这里是另一个文本停止
所需输出:
THIS IS TEXT I WANT stop
解决方法就是像这样写正则表达式
(?<=test1)(.*?stop)
关键是你必须加上?在*之后,它将使前一个操作符变为惰性,这意味着它将在第一次出现时停止