在记事本++中使用正则表达式中的几行

时间:2016-05-09 15:47:41

标签: html regex notepad++

我想在几百个单独的文件中找到以下一组html信息:

{{> StartPageAvatar char="k"}}
<h3>{{> m1a35Intro}}</h3>
{{> duration3}}

不,我可以单独完成所有这些,

([^\w\*]{3,4 } StartPageAvatar char="([k,t,u,e,l]{1,4})"[^\w\*]{2})
(<h3>([^\w\*]{3,4 }m(.)a(.{1,2})Intro[^\w\*]{2})</h3>)
([^\w\*]{3,4 }duration(.)[^\w\*]{2})

我不能得到的是如何一次完成所有三行,因为我想使用变量 m1a35 来添加三个原始行之上的新行。所以我希望得到最终结果:

<h1 class="start-page-header">{{> m1a35Title}}</h1>
{{> StartPageAvatar char="k"}}
<h3>{{> m1a35Intro}}</h3>
{{> m1a33Time}}

所以我删除了{{duration#}}模板并将其替换为特定于活动的时间模板。我遇到的问题是添加{{&gt; m1a33Title}}行,因为这需要知道它应该是什么活动数,这由下面的行提供。

我无法让三个正则表达式一起工作并一次完成。

1 个答案:

答案 0 :(得分:0)

如果我理解正确,这个正则表达式将完成工作:

(\W{3,4}StartPageAvatar char="[ktuel]{1,4}"\W{2}).<h3>(\W{3,4}m.a.{1,2})Intro\W{2}<\/h3>.\W{3,4}duration.\W{2}

Live Demo

我改变了:

  • 您的[k,t,u,e,l][ktuel]的字符(不需要逗号)
  • 你的否定[^\w\*]\W(但它错过了明星)
  • 删除了一些无用的捕获组

不要忘记设置发现&amp;将N ++的选项替换为:

enter image description here

相关问题