Regex 要从X到Y选择的正则表达式

Regex 要从X到Y选择的正则表达式,regex,expression,notepad++,Regex,Expression,Notepad++,我有以下HTML: <Some Html above....../> <!--Template Start --> <div> <p>Some text</p> ... <div> <!--Template End --> <Some Html below/> 一些文本 ... 现在,如何编写正则表达式来匹配从模板开始到的所有文本 模板结束 这里说记事本++使用闪烁引擎。 (* s修改器应打开

我有以下HTML:

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

一些文本

...
现在,如何编写正则表达式来匹配从模板开始到的所有文本 模板结束

这里说记事本++使用闪烁引擎。

(*

s修改器应打开。

假设没有嵌套模板:

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

注意:打开模式DOT\u ALL也可以覆盖换行符。

这是一个遗憾,但是记事本++不支持在正则表达式模式下本地匹配换行符(\r\n)。它只支持在扩展模式下匹配换行符。 但是,它支持在两种模式下插入换行符

为了达到预期的效果,您可以采取以下变通方法:

  • 删除扩展模式下的所有换行符(将
    \r\n
    替换为零),这样您就有了一个换行符
  • 在正则表达式模式下执行正则表达式操作
  • 在扩展模式(例如,将
    替换为
    \r\n
    等)或正则表达式模式下添加换行符

  • 我在某个地方读到过PythonScript插件为N++增加了对正则表达式更好的支持,但我没有检查它。

    你的意思是
    ((.|\N)*)
    @Howard实际上是4秒:)如何切换s修饰符,我是正则表达式的新手。@user637307你使用什么编程语言?我使用的是记事本++文本编辑器,这是用Visual C++(使用Microsoft Visual Studio)编写的,我想如何打开模式DOT_ALL,因为我不熟悉正则表达式。@user637307您使用哪种语言?我使用的是记事本++文本编辑器,这是用Visual C++(使用Microsoft Visual Studio)编写的。我不知道记事本++支持哪种正则表达式。您也可以尝试使用
    ((.|\n)*?)
    而不是
    (.*)
    。这里说它使用闪烁引擎。
    <!--Template Start -->(.*?)<!--Template End -->