3

我想匹配所有“新行”类型的 html 标记(中断和段落) ,无论它们出现多少以及以什么顺序出现,只要它们出现在一行的开头。

此正则表达式模式匹配一个: ^<[Bb][Rr] ?/?>|^<[Pp]>

因此,鉴于此 text <p><br>fred,它将匹配第一个<p>但不匹配紧随其后的<br>

请注意,我不想删除这些标签中的每一个,而只是删除那些出现在输入行开头的标签。

4

2 回答 2

4

我还将添加对标签之间空格的支持:

^(?:(?:<[Bb][Rr]>\s*)|(?:<[Pp]\s*>))+
于 2012-04-14T14:11:57.033 回答
2

你需要一些重复

^(<[Bb][Rr] ?/?>|^<[Pp]>)+

此外,如果您只使用不区分大小写的标志而不是字符类,这将更清晰/更简洁。

^(<br ?/?>|^<p>)+
于 2012-04-14T14:07:15.090 回答