我希望在下面的行中得到Asarum这个词:
<A HREF="http://www.getty.edu/vow/TGNFullDisplay?find=&place=&nation=&english=Y&subjectid=1062783">Asarum</A>
我试过:
preg_replace('/<a.*?>/i', '', $link);
preg_replace('/<\/a>/i', '', $link);
echo $link;
但它不起作用。什么都没有被删除。
有人能帮助我吗?
答案 0 :(得分:3)
最快(可能 - 未经测试):
$t = substr($link, strpos($link, '>') + 1, -4);
最清楚:
$t = strip_tags($link);
带正则表达式的基本条带标签:
$t = preg_replace('/<[^>]*>/', '', $link);
答案 1 :(得分:2)
您需要指定结果:
$link = preg_replace('/<a.*?>/i', '', $link);
$link = preg_replace('/<\/a>/i', '', $link);
echo $link;
答案 2 :(得分:2)
使用此代码将文本与特定正则表达式匹配,而不是替换其他所有内容:
preg_match('/<a.*?>(.+?)<\/a>/i', $link, $matches);
$matches[1]
现在将包含您要查找的文字。