我想使用正则表达式来检查一个HTML文档是否包含以下所有标签中的至少一个:
<b> [content1] </b>
和/或
<i> [content2] </i>
<b> [content3] <i> [content4] </i> [content5] </b>
或
<i> [content6] <b> [content7] </b> [content8] </i>
“内容”可以是任何东西。有没有办法做到这一点?
kulphzqa1#
回答:
<([bi])>.*<\/\1>
测试链接:
https://regex101.com/r/sRNkNE/1
说明:
<([bi])>将匹配<b>或<i>并捕获字母b或i.*是标记的内容。它可能包含其他<b>...</b>或<i>...</i>标签,我们不在乎。<\/\1>将匹配先前捕获的字母(B或i)的结束标记如果不想在内容为空时匹配,可以将.*替换为.*\S.*
<([bi])>
<b>
<i>
b
i
.*
<b>...</b>
<i>...</i>
<\/\1>
.*\S.*
1条答案
按热度按时间kulphzqa1#
回答:
测试链接:
https://regex101.com/r/sRNkNE/1
说明:
<([bi])>
将匹配<b>
或<i>
并捕获字母b
或i
.*
是标记的内容。它可能包含其他<b>...</b>
或<i>...</i>
标签,我们不在乎。<\/\1>
将匹配先前捕获的字母(B或i)的结束标记如果不想在内容为空时匹配,可以将
.*
替换为.*\S.*