4

我有大约 50 个 html 文档,我需要替换之间的文本

<!DOCTYPE

<!-- start content -->

<?php require("header.php"); ?>

从我读到的内容来看,Notepad++ 不支持多行正则表达式,但我想我也可以把它放在问题中。我是正则表达式的新手,所以我需要有人告诉我如何做到这一点。提前致谢!

4

1 回答 1

1

我既没有安装 Notepad++ 也没有安装 Textpad,所以我不能肯定地说,但以下其中一项可能在那里工作:

搜索

  1. <!DOCTYPE[\s\S]*?<!-- start content -->或者
  2. <!DOCTYPE.*?<!-- start content -->设置了“点匹配换行符”选项或
  3. (?s)<!DOCTYPE.*?<!-- start content -->

并将其替换为<?php require("header.php"); ?>.

这将删除两个短语之间的所有内容(包括短语本身)。如果你不想要那个(我不确定你的问题),那么你可能想保留第一行之后的内容<!DOCTYPE,对吧?所以:

搜索(<!DOCTYPE[^\r\n]*)[\s\S]*?<!-- start content -->(或(?s)(<!DOCTYPE[^\r\n]*).*?<!-- start content -->等),

并替换为$1<?php require("header.php"); ?><!-- start content -->

于 2010-10-03T14:04:00.453 回答