如何解决没有以特定单词开头的行的文件的正则表达式
我想搜索整个文件而不仅仅是一行。 ^((?!MYWORD).)*$ 如果我理解正确,这将搜索该行不以提供“.”的单词“MYWORD”开头。当然不包括换行符。所以我想检查一下文件中的任何一行都没有这样的行。
所以如果我的文件包含:
xyz
MYWORD is here
123
然后我排除这个文件。
请注意,我正在 NotePad++ (v7.9.1) 的“在文件中查找”对话框中键入我的正则表达式,我在其中指定了一个文件夹,因此我想搜索文件夹中的所有文件。
实际示例查找 .sql 文件中没有“CREATE”子句的文件。
我知道有些聪明人会说使用找到您想要的 MYWORD 的表达式然后您可以消除这些,但您知道我想知道是否可能。
解决方法
如果您想查找不包含 CREATE
的文件,您可以在 在文件中查找 选项卡中使用此模式:
(?s)\A(?!.*\bCREATE\b)
-
(?s)
内联修饰符,点匹配换行符 -
\A
字符串开头 -
(?!.*\bCREATE\b)
使用单词边界在文本中断言不是单词 CREATE\b
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。