求一个正则表达试!!急急急急!100分等带
类似这样的一个连接:
<a
href= "http://url " target= "_blank "> 标题 </a>
或者是
<a target= "_blank "
href= "http://url "> 标题 </a>
等等这样的连接:
我需要使用 preg_match_all 得到一个 url和标题.数组.
等带中.希望赐教.马上给分
------解决方案--------------------# <a[^> ]+href=([ '\ "]?)(.+)\\1[^> ]*> (.*) <\/a> #isU
------解决方案--------------------preg_match_all( '/ <a[^> ]+href[\s\r\n]*=[\s\r\n]*([ '\ "]?)(.+)\1[^> ]*> (.+) <\/a> /isU ',$text,$matches);
------解决方案--------------------@href= "(.*) ".*> (.*) </@isU
示例:
<?php
$str = < < <EOF
<a
href= "http://url " target= "_blank "> 标题 </a>
或者是
<a target= "_blank "
href= "http://url "> 标题 </a>
EOF;
preg_match_all( "@href=\ "(.*)\ ".*> (.*) </@isU ",$str,$matches);
print_r( ' <PRE> ');
print_r($matches);
?>
输出:
Array
(
[0] => Array
(
[0] => href= "http://url " target= "_blank "> 标题 </
[1] => href= "http://url "> 标题 </
)
[1] => Array
(
[0] => http://url
[1] => http://url
)
[2] => Array
(
[0] => 标题
[1] => 标题
)
)