正则表达式从X到Y中选择

时间:2011-09-25 08:16:17

标签: regex expression notepad++

我有以下HTML:

<Some Html above....../>
<!--Template Start -->
<div>
<p>Some text</p>
...
<div>
<!--Template End -->
<Some Html below/>

现在我如何编写正则表达式以匹配模板开始中的所有文本 模板结束

这里说notepad ++使用Scintilla引擎。 Notepad++ non-greedy regular expressions

3 个答案:

答案 0 :(得分:9)

<!--Template Start -->(.*?)<!--Template End -->

s 修饰符应该打开。

答案 1 :(得分:2)

假设没有嵌套模板:

<!--Template Start -->(.*?)<!--Template End -->

注意打开模式DOT_ALL也可以覆盖换行符。

答案 2 :(得分:0)

这很遗憾,但Notepad ++不支持在regex模式下本地匹配换行符(\ r \ n)。它仅支持在扩展模式下匹配换行符。 但它支持在两种模式下插入换行符。

要获得所需的结果,您可以采取以下解决方法:

  1. 在扩展模式下删除所有换行符(无需替换\r\n),这样您就可以使用单行。
  2. 在正则表达式模式下进行正则表达式操作。
  3. 以扩展模式重新添加换行符(例如,将<div>替换为<div>\r\n,依此类推)或正则表达式模式。
  4. 我已经读过某个地方,N ++的PythonScript插件为正则表达式提供了更好的支持,但我没有检查它。