0

我想在 Total Commander 中按文件内容搜索文件,所以我想创建一个正则表达式,但我找不到任何可以真正解释它的手册。我的情况是我需要这样的东西:

fileContains("<html>") && fileContains("{myVariable1}") && fileNotContains("<script>")

我可以这样写 cca:

(<html>)+
({myVariable1})+
(<script>){0} ... but this does not work for me

我不能把它们放在一起。请问有什么想法吗?或者你有一个优秀的正则表达式解释的链接吗?

4

1 回答 1

0

试试这个正则表达式

(?=.*\{myVariable1\})(?=.*<html>)(?!.*<script>)

它只是连续 3 次前瞻。其中之一是消极的前瞻。请注意“单行”修饰符以启用“点匹配换行符”。

编辑(每条评论):我猜 Total Commander 的正则表达式引擎根本不支持环视。虽然您可以将两个积极的前瞻结合到一个等效的“消费”模式中(.*(\{myVariable1\}|<html>)){2},但除非您有一个合法的正则表达式引擎,否则您不能在单个正则表达式中包含“否定搜索”。

你可以试试这个 Total Commander 正则表达式插件

支持 Unicode 的 RegEx 内容插件 - 基于 Perl 兼容正则表达式 (PCRE) 库。此插件可能会替换 TC 的文件内容 RegEx 引擎

于 2016-10-14T14:25:07.680 回答