首页>>深圳网站建设

深圳PHP 正则匹配替换指定A标签href只保留文字

  • 时间:
  • 浏览:
  • 来源:深圳网站建设
contenttext=preg_replace('/<a\s*href="\/tag[^\s>]+"\s*[^>]*>([^<>]*)<\/a>/is',"$1",$contenttext);

可参照以下说明:<a\b[^>]*\bhref=([^\s>]+)[^>]*>[\s\S]*?([^<>]*)</a>


解释:

<a\b #匹配a标签的开始

[^>]* #匹配a标签href属性前的其他属性

\bhref=([^\s>]+) #匹配href属性,并将匹配到的内容捕获到分组1当中

[^>]*> #匹配a标签的结束

[\s\S]*? #匹配a标签文本前的img标签

([^<>]*) #匹配a标签文本并捕获到分组2当中

</a> #匹配a标签的关闭

分组1和分组2即为所需内容

简化版:

<a\s*href=([^>]+)><img[^>]+>([^>]+)</a>

实际上简化版可能效率更高……因为严格按照原文本格式来匹配。

猜你喜欢