【发布时间】:2015-10-11 23:43:10
【问题描述】:
我正在寻找一个可以删除所有跨度保持内部文本的正则表达式。我的内部 HTML 中有这种跨度。
输入
格式正确的 HTML
<span style='font-size:10.0pt;font-family:"Arial","sans serif"'**>
First span
</span>
<span style="color:#221E1F;">
<span style='font-size:10.0pt;font-family:"Arial";color:windowtext'>
This is to test Regular expression
</span>
</span>
<span style="color:#221E1F;"><span style='font-size:10.0pt;font-family:
"Arial","sans-serif";color:#548DD4'>
last Span text
</span>
</span>
格式不正确:
<span style='font-size:10.0pt;font-family:"Arial","sans-serif";
mso-bidi-font-style:italic'><%T</span><span class="A1"><span style='font-size:
10.0pt;font-family:"Arial","sans-serif";mso-fareast-font-family:Calibri;
mso-fareast-theme-font:minor-latin;color:windowtext'>PA_Enrollment_Options%>
one of the convenient options below</span></span><span class="A1"><span style='font-size:10.0pt;font-family:"Arial","sans-serif";mso-fareast-font-family:
Calibri;mso-fareast-theme-font:minor-latin;color:#548DD4;mso-themecolor:text2;
mso-themetint:153'>: <o:p></o:p></span></span>
预期输出 : First Span 这是测试正则表达式最后一个跨度文本
我已经尝试过这个正则表达式 - (<span.*([\r\n]).*>)|(<span.*>)|(</span>).
当我的 HTML 格式正确时,这是有效的,但在我的情况下,HTML 的缩进不正确。
我没有使用正则表达式来完全解析。我只在内部 html 中执行此操作
【问题讨论】:
-
使用
<span\b[^<>]*>|</span>。或者 HtmlAgilityPack 以更合适的方式来做。 -
请不要delete your question 重新提问,更新你原来的问题...
-
您在上一个问题中给出了类似的链接:stackoverflow.com/questions/1732348/… 使用 html 解析器。不要使用正则表达式。