Regex 使用记事本查找前面没有分号的字符串++;
在一个包含数百个xml文件的目录中,我需要找到包含字符串Regex 使用记事本查找前面没有分号的字符串++;,regex,notepad++,regex-negation,Regex,Notepad++,Regex Negation,在一个包含数百个xml文件的目录中,我需要找到包含字符串nature的文件,其中该字符串前面没有分号 例如: 它应该发现: STATUS_OMS.PLUVOI = "NATURE" 它不应发现: ; Horse Nature Product.. 我对正则表达式相当陌生。 我尝试了很多,这一次似乎很接近,但否定没有达到预期的效果 [^;].+?nature 有没有关于我做错了什么的线索 请注意,我正在使用记事本++这就是你的意思吗?它搜索符合并包含单词nature的行,该行没有;自然一词之前
nature
的文件,其中该字符串前面没有分号
例如:
它应该发现:
STATUS_OMS.PLUVOI = "NATURE"
它不应发现:
; Horse Nature Product..
我对正则表达式相当陌生。
我尝试了很多,这一次似乎很接近,但否定没有达到预期的效果
[^;].+?nature
有没有关于我做错了什么的线索
请注意,我正在使用记事本++这就是你的意思吗?它搜索符合并包含单词nature的行,该行没有;自然一词之前的字符
^[^;]+nature
您正在寻找:
^[^;]*nature
它查找以任意数量的非分号字符开头,后跟“nature”的行
你的正则表达式:
[^;].+?nature
在一行中的任意位置查找一个非分号字符,后跟一个或多个任意类型的字符,后跟“nature”。。这样一个小小的差异在表达,一个全新的世界的结果。谢谢!斯文加有一个更好的。我的至少需要一个字符在单词“自然”之前,他的不需要。你是对的。无论如何,谢谢你的快速回复。你的回答对我来说已经足够好了,但为了将来的参考,我把答案换成了斯文加。事实上,也是这样。感谢您对我自己的正则表达式所需内容的解释,这有助于学习过程;)