日期:2014-05-17  浏览次数:20485 次

求一个正则表达试!!急急急急!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] => 标题
)

)