这是我需要能够做到的:
我需要匹配以下标签:
<SPAN style="TEXT-DECORATION: underline">text sample</SPAN>
我需要用 html3 兼容标签替换 span,但保留中间的文本。替换后的最终标签应如下所示:
<u>text sample</u>
我只是不擅长正则表达式,似乎无法想出答案。
先感谢您。
正则表达式不是为标签操作而设计的。
如果进行任何形式的嵌套,就会变得混乱。
但是,鉴于提供的非常简单的示例,您也许可以这样做:
$MyString = preg_replace
( '/(?si)<SPAN\s+style\s*=\s*"TEXT-DECORATION:\s*underline;?"\s*>(.*?)<\/SPAN>/'
, '<u>$1</u>'
, $MyString
);
但这在很多方面都有缺陷,最好使用专为操作标签而设计的工具。
看一下DOMDocument->loadHTML() and 相关功能.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)