html - 查找并替换标签之间的内容

标签 html regex sublimetext2

我的 HTML 部分如下所示

<h4>Headline 1</h4>
<p>Content 1</p>
<h4>Headline 2</h4>
<p>Content 2</p>
<h4>Headline 3</h4>
<p>Content 3</p>

我有大约 50 个这样的“ block ”。我需要将它们包裹在 <div> 中重新设计它们,我想我可以使用 SublimeText2 的查找/替换功能来获取所有这些并替换它们,使它们看起来像这样

<div>
<h4>Headline 1</h4>
<p>Content 1</p>
</div>    
<div>
<h4>Headline 2</h4>
<p>Content 2</p>
</div>
<div>    
<h4> Headline 3</h4>
<p>Content 3</p>
</div>

我无法想出允许我选择和替换的正则表达式。

我试过<h4>(.*)<\/p>但它不会产生任何结果。

我还测试了/<h4>(.*)<\/p>/shttps://regex101.com/但它在整个文件中生成了 1 个匹配项。

我怎样才能做到这一点?

免责声明:我并不想解析天知道有多少事情。我知道使用正则表达式进行 HTML 解析的恶魔本质。

最佳答案

查找

(<h4>[\S\s]*?</p>)

并替换

<div>\n\1\n</div>

enter image description here

或者,您可以使用此正则表达式进行查找

(?s)(<h4>.*?</p>)

关于html - 查找并替换标签之间的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36980609/

相关文章:

regex - Sublime Text - 用于搜索和替换的正则表达式

sass - 有没有办法在 sublime 中自动保存每次击键?

html - 浏览器不断呈现其缓存版本。我想总是强制 GET

javascript - onclick 发送 2 个变量

java - 在不跟在 '\' 之后的分隔符处分割字符串

javascript 正则表达式从小写字母中拆分大写字母

git - Git 的问题 - rebase/squash

任何更改都不会加载 Html 图片 - Golang

html - CSS 无法在 Chrome 中正确显示

javascript - 正则表达式查找 char '.' 除了以 @ 开头的单词