【发布时间】:2012-07-31 23:13:48
【问题描述】:
我有以下 html 字符串示例。我想在裸文本周围添加标签:
$html='<span>text1</span> text2 <a href="yahoo.com">yeahoo</a> text4 <div>abc</div> xyz';
假设 html 格式正确,我想在 text2、text4 和 xyz 周围添加一个标签(例如 )。
我设想了一个简单的函数,称为:$resHtml=addTagsToNakedText($html,'<span>','</span>');
最终结果应该是:
'<span>text1</span><span> text2 </span><a href="yahoo.com">yeahoo</a><span> text4 </span><div>abc</div><span> xyz</span>'
任何想法如何做到这一点?我认为这需要一些正则表达式功能。
谢谢
【问题讨论】:
-
那个链接主要是开玩笑的;这是规范的“使用正则表达式解析 HTML”答案:)。但它有很多道理。你最好使用真正的解析器。
-
我已经弄清楚了如何使用 DOM 来做我需要使用 SIMple HTML Dom simplehtmldom.sourceforge.net/index.htm