<A href="http://fx.taoo.com/u/MjgxODkzNjY2/view/ta_taoshare_list.htm?redirect=fa" target="_blank">饭勺 </A><A href="http://rate.taoo.com/user-rate-8907ad41fbab5b9bbe534d881bba661e.htm" target="_blank"><IMG title="请点击查看详情" src="http://pics.cdn.com/newrank/b_red_4.gif" align="absMiddle" border="0"></A>
<A href="http://fx.taoo.com/u/MjgxODkzNjY2/view/ta_taoshare_list.htm?redirect=fa" target="_blank">的勺 </A><A href="http://rate.taoo.com/user-rate-8907ad41fbab5b9bbe534d881bba661e.htm" target="_blank"><IMG title="请点击查看详情" src="http://pics.cdn.com/newrank/b_r0.gif" align="absMiddle" border="0"></A>
第一,请问怎么取其中的文本内容“饭勺”和“的勺”
第二,请问怎么把"饭勺"和"的勺"的链接替换成<a href="http://www.a.com/a.php?g=饭勺" target="_blank">饭勺</a>这样的形式。
麻烦高手们帮帮忙,这个用php结合正则表达式,程序中的正则表达式该怎么写?
<A href="http://fx.taoo.com/u/MjgxODkzNjY2/view/ta_taoshare_list.htm?redirect=fa" target="_blank">的勺 </A><A href="http://rate.taoo.com/user-rate-8907ad41fbab5b9bbe534d881bba661e.htm" target="_blank"><IMG title="请点击查看详情" src="http://pics.cdn.com/newrank/b_r0.gif" align="absMiddle" border="0"></A>
第一,请问怎么取其中的文本内容“饭勺”和“的勺”
第二,请问怎么把"饭勺"和"的勺"的链接替换成<a href="http://www.a.com/a.php?g=饭勺" target="_blank">饭勺</a>这样的形式。
麻烦高手们帮帮忙,这个用php结合正则表达式,程序中的正则表达式该怎么写?
$str = <<<eof
<A href="http://fx.taoo.com/u/MjgxODkzNjY2/view/ta_taoshare_list.htm?redirect=fa" target="_blank">饭勺 </A><A href="http://rate.taoo.com/user-rate-8907ad41fbab5b9bbe534d881bba661e.htm" target="_blank"><IMG title="请点击查看详情" src="http://pics.cdn.com/newrank/b_red_4.gif" align="absMiddle" border="0"></A>
<A href="http://fx.taoo.com/u/MjgxODkzNjY2/view/ta_taoshare_list.htm?redirect=fa" target="_blank">的勺 </A><A href="http://rate.taoo.com/user-rate-8907ad41fbab5b9bbe534d881bba661e.htm" target="_blank"><IMG title="请点击查看详情" src="http://pics.cdn.com/newrank/b_r0.gif" align="absMiddle" border="0"></A>
eof;
echo '<pre>';
if(preg_match_all('/<a\s+href="(.*?)"\s+target="_blank">(?!<img[^>]*>)(.*?)<\/a>/i',$str,$arr)){
print_r($arr);
}输出:
Array
(
[0] => Array
(
[0] => 饭勺
[1] => 的勺
) [1] => Array
(
[0] => http://fx.taoo.com/u/MjgxODkzNjY2/view/ta_taoshare_list.htm?redirect=fa
[1] => http://fx.taoo.com/u/MjgxODkzNjY2/view/ta_taoshare_list.htm?redirect=fa
) [2] => Array
(
[0] => 饭勺
[1] => 的勺
))
$str = <<<eof
<A href="http://fx.taoo.com/u/MjgxODkzNjY2/view/ta_taoshare_list.htm?redirect=fa" target="_blank">饭勺 </A><A href="http://rate.taoo.com/user-rate-8907ad41fbab5b9bbe534d881bba661e.htm" target="_blank"><IMG title="请点击查看详情" src="http://pics.cdn.com/newrank/b_red_4.gif" align="absMiddle" border="0"></A>
<A href="http://fx.taoo.com/u/MjgxODkzNjY2/view/ta_taoshare_list.htm?redirect=fa" target="_blank">的勺 </A><A href="http://rate.taoo.com/user-rate-8907ad41fbab5b9bbe534d881bba661e.htm" target="_blank"><IMG title="请点击查看详情" src="http://pics.cdn.com/newrank/b_r0.gif" align="absMiddle" border="0"></A>
eof;
$f = "/<a\s+href=\"(.*?)\"\s+target=\"_blank\">(?!<img[^>]*>)(.*?)<\/a>/i";
$t = "<a href=\"http://www.a.com/a.php?g=\\2\" target=\"_blank\">\\2</a>";
$str = preg_replace($f,$t,$str);
echo $str ;输出:
<a href="http://www.a.com/a.php?g=饭勺 " target="_blank">饭勺 </a><A href="http://rate.taoo.com/user-rate-8907ad41fbab5b9bbe534d881bba661e.htm" target="_blank"><IMG title="请点击查看详情" src="http://pics.cdn.com/newrank/b_red_4.gif" align="absMiddle" border="0"></A>
<a href="http://www.a.com/a.php?g=的勺 " target="_blank">的勺 </a><A href="http://rate.taoo.com/user-rate-8907ad41fbab5b9bbe534d881bba661e.htm" target="_blank"><IMG title="请点击查看详情" src="http://pics.cdn.com/newrank/b_r0.gif" align="absMiddle" border="0"></A>
get: /<a[^>]+>(.+)<\/a>/uiU
如果不是unicode编码,"/"后面的小写u去掉,改成/iU
另:不适合空格开头情况,最好加trim函数再处理才输出
replace: <a href="http://www.a.com/a.php?g=\$1" target="_blank">\$1</a>