需要正则表达式来匹配出现在行首的<<br/> <>的任何组合</p>

时间:2012-04-14 14:02:23

标签: regex

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

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

因此,根据此文<p><br>fred,它会与第一个<p>相匹配,但不会紧跟在<br>之后。

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

2 个答案:

答案 0 :(得分:3)

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

^(?:(?:<[Bb][Rr]>\s*)|(?:<[Pp]\s*>))+

答案 1 :(得分:2)

您需要一些repetition

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

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

^(<br ?/?>|^<p>)+