我正在提供反向链接销售服务,但在检查发布商网站上的已售链接时遇到问题。例如,我想检查
<a href="http://www.example.com" title="example">example</a>
我可以检查一下,但有些用户添加target="_blank"
其中一些target="_new"
...网站管理员正在更改代码的结构。
我想用正则表达式检查代码。正则表达式应检查href=""
,title=""
以及a标记(<a>here</a>
)之间。
答案 0 :(得分:0)
我告诉过你:
$str = "<a onclick=\"foo()\" href=\"http://www.example.com\" title=\"example\">example</a>" ;
function url_grab( $html )
{
preg_match( "/<a\s+.*href=(\"|')([^\\1]+)(\\1).*>(.+)<\/a>/U" , $html , $m ) ;
return array( $m[ 2 ] , $m[ 4 ] ) ;
}
// test it
var_dump( url_grab( $str ) ) ;
输出:
array(2) {
[0]=>
string(22) "http://www.example.com"
[1]=>
string(7) "example"
}
答案 1 :(得分:0)
使用this parser代替正则表达式,这是很酷但是错误的工具。