我试图在我的内容中匹配<a>
标记,然后替换为链接文本,然后用方括号中的网址替换为打印版本。如果只有“href”,以下示例工作。如果<a>
包含另一个属性,则它匹配得太多并且不会返回所需的结果。我如何匹配URL和链接文本,就是这样?内容中的纯文本的固定标记
这里是我的代码:
<?php
$content = '<a href="http://www.website.com">This is a text link</a>';
$result = preg_replace('/<a href="(http:\/\/[A-Za-z0-9\\.:\/]{1,})">([\\s\\S]*?)<\/a>/',
'<strong>\\2</strong> [\\1]', $content);
echo $result;
?>
期望的结果:
<strong>This is a text link </strong> [http://www.website.com]
感谢, 杰森
你能用任何答案解决你的问题吗? – 2009-10-06 15:23:44
谢谢你回来。是的,我能够使用“?”对于非常规的比赛来获得理想的结果。这适用于这种特殊情况。不过,我喜欢你解析DOM的方法。我需要充分理解这一点。 – JasonBartholme 2009-10-06 19:59:40