我确信这个很容易,但我尝试了很多变化,但仍然无法满足我的需要.事情太贪婪了,我不能让它停止贪婪.
鉴于案文:
test=this=that=more text follows
我想选择:
test=
我试过以下正则表达式
(\S+)=(\S.*) (\S+)?= [^=]{1} ...
谢谢大家.
解决方法
这里:
// matches "test=,test" (\S+?)= or // matches "test=,test" too (\S[^=]+)=
你应该考虑使用第一个版本.给定你的字符串“test = this = that = more text following”,版本1将匹配test = this = that =然后继续解析到字符串的结尾.然后它会回溯,并找到test = this =,继续回溯,找到test =,然后选择test =作为它的最终答案.
版本2将匹配test =然后停止.您可以在较大的搜索中看到效率提升,例如多行或整个文档匹配.