【发布时间】:2010-07-27 10:45:18
【问题描述】:
例如,我有一个这样的字符串:
$html = '
<a href="test.html">test</a>
<a href="http://mydomain.com/test.html">test</a>
<a href="http://otherdomain.com/test.html">test</a>
<a href="someothertest/otherdir/hi.html">hi</a>
';
我想将绝对网址附加到所有没有给出绝对域的href。
$html = '
<a href="http://mydomain.com/test.html">test</a>
<a href="http://mydomain.com/test.html">test</a>
<a href="http://otherdomain.com/test.html">test</a>
<a href="http://mydomain.com/someothertest/otherdir/hi.html">hi</a>
';
最好的方法是什么?我猜想与 RegEx 有关,但我的 RegEx 技能是 ** ;)
提前致谢!
【问题讨论】:
-
虽然 regex 可能会暂时让您继续前进,但在以后的时间点可能会很危险。最好将其解析为 xml,检查属性是否以
http://开头,如果不是,则在前面加上http://mydomain.com/。 -
test 应该添加到示例中...