我需要能够搜索几千个 XHTML 和 XML 文件,并查看第一行不包含以下字符串的文件列表:
<?xml version="1.0" encoding="utf-8"?>
我该怎么做呢?我以为我可以在 Notepad++ 中使用“在文件中搜索”功能来执行此操作,但我看不到任何方法来查找未找到和/或格式不正确的字符串并让它输出文件列表。
答案1
使用特工搜捕并将其设置为仅搜索 .xml 文件类型。如果您知道 RegEx 如何使用,我正在工作或我愿意提供帮助。我相信 Agent Ransack 具有仅使用负面搜索的功能,但我必须检查一下。
Agent Ransack 有一个“指定非表达式”功能,可以满足您的需求,但您需要一个正则表达式匹配字符串才能实现。如果您是一名开发人员,那么至少熟悉一些基本的搜索或文本匹配是一项很好的技能。
[编辑]Agent Ransack 没有“非表达式”搜索功能。不过 RegEx 相当简单。
(<\?xml version="1.0" encoding="utf-8"\?>)
我会继续寻找工具/实用程序应用程序。
答案2
我知道这是一个老问题,但我来这里是为了寻找相同的信息,并想分享一个使用 Agent Ransack 的更简单的解决方案,它确实允许您指定 NOT 条件。对于上述问题,使用以下内容作为要搜索的文本非常有效,对相关字符串唯一必要的修改是转义双引号:
NOT "<?xml version=\"1.0\" encoding=\"utf-8\"?>"
希望这对其他人有帮助。