能不用循环和分开的数组一次性获得所有a标记的值吗?,如前;怎么用正则只获取一段代码里面<a></a>里面的值?包含<a>标记 本帖最后由 php1999 于 2011-06-20 21:00:08 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 $str = <<<HTML<div class="midbox" alt="上中"> <!--头条--><div class="hotspotnews"><h2 class="tit"><a id="a00794" href="http://news.10jqka.com.cn/c/20110620/522801460.shtml" title="“半港股直通车”传将登陆深沪 待内地拍板" class="red" ><b>“半港股直通车”传将登陆深沪 待内地拍板</b></a> </h2> <span>[<a id="a00795" href="http://news.10jqka.com.cn/c/20110620/522797452.shtml" title="资金面再临考验 本周先抑后扬?" >资金面再临考验 本周先抑后扬?</a> <a id="a00796" href="http://news.10jqka.com.cn/c/20110620/522797683.shtml" title="本周解禁市值为偏高水平">本周解禁市值为偏高水平</a> ]</span><span>[<a id="a00797" href="http://news.10jqka.com.cn/c/20110620/522801144.shtml" title="压力空前 银行股或掀融资高潮" >压力空前 银行股或掀融资高潮</a> <a id="a00798" href="http://forum.10jqka.com.cn/c/20110620/522801149.shtml" title="A股已被榨干 谁来救市?">A股已被榨干 谁来救市?</a> ]</span><h2 class="tit"><a id="a00799" href="http://news.10jqka.com.cn/c/20110620/522803600.shtml" title="抄底还是割肉 市场已发出5大信号" class="red" ><b>抄底还是割肉 市场已发出5大信号</b></a> </h2><span>[<a id="a00800" href="http://forum.10jqka.com.cn/c/20110620/522803608.shtml" title="拒绝被市场“欺负”与“气死”" >拒绝被市场“欺负”与“气死”</a> <a id="a00801" href="http://news.10jqka.com.cn/c/20110620/522803606.shtml" title="明股市三大猜想及应对策略">明股市三大猜想及应对策略</a> ]</span><span>[<a id="a00802" href="http://news.10jqka.com.cn/c/20110620/522803622.shtml" title="银行股可能成首选护盘品种" >银行股可能成首选护盘品种</a> <a id="a00803" href="http://news.10jqka.com.cn/c/20110620/522801201.shtml" title="以史为鉴 2600点难言历史底部">以史为鉴 2600点难言历史底部</a> ]</span><em class="morenews"><a id="a00804" href="http://index.10jqka.com.cn/list/inews/">更多要闻 >></a></em></div><!--/头条-->HTML;preg_match_all("|(<a[^>]*>.+</a>)|U", $str, $out);print_r($out[1]); 这都是分开的数组呀。。Array( [0] => <a id="a00794" href="http://news.10jqka.com.cn/c/20110620/522801460.shtml" title="“半港股直通车”传将登陆深沪 待内地拍板" class="red" ><b>“半港股直通车”传将登陆深沪 待内地拍板</b></a> [1] => <a id="a00795" href="http://news.10jqka.com.cn/c/20110620/522797452.shtml" title="资金面再临考验 本周先抑后扬?" >资金面再临考验 本周先抑后扬?</a> [2] => <a id="a00796" href="http://news.10jqka.com.cn/c/20110620/522797683.shtml" title="本周解禁市值为偏高水平">本周解禁市值为偏高水平</a> [3] => <a id="a00797" href="http://news.10jqka.com.cn/c/20110620/522801144.shtml" title="压力空前 银行股或掀融资高潮" >压力空前 银行股或掀融资高潮</a> [4] => <a id="a00798" href="http://forum.10jqka.com.cn/c/20110620/522801149.shtml" title="A股已被榨干 谁来救市?">A股已被榨干 谁来救市?</a> [5] => <a id="a00799" href="http://news.10jqka.com.cn/c/20110620/522803600.shtml" title="抄底还是割肉 市场已发出5大信号" class="red" ><b>抄底还是割肉 市场已发出5大信号</b></a> [6] => <a id="a00800" href="http://forum.10jqka.com.cn/c/20110620/522803608.shtml" title="拒绝被市场“欺负”与“气死”" >拒绝被市场“欺负”与“气死”</a> [7] => <a id="a00801" href="http://news.10jqka.com.cn/c/20110620/522803606.shtml" title="明股市三大猜想及应对策略">明股市三大猜想及应对策略</a> [8] => <a id="a00802" href="http://news.10jqka.com.cn/c/20110620/522803622.shtml" title="银行股可能成首选护盘品种" >银行股可能成首选护盘品种</a> [9] => <a id="a00803" href="http://news.10jqka.com.cn/c/20110620/522801201.shtml" title="以史为鉴 2600点难言历史底部">以史为鉴 2600点难言历史底部</a> [10] => <a id="a00804" href="http://index.10jqka.com.cn/list/inews/">更多要闻 >></a>)我要[0][1][2]...这样才能全部取出来。有办法1个数组内取出来不?不能循环。不能2次正则?有没办法? $str=<<< HTML <div class="midbox" alt="上中"> <!--头条--><div class="hotspotnews"><h2 class="tit"><a id="a00794" href="http://news.10jqka.com.cn/c/20110620/522801460.shtml" title="“半港股直通车”传将登陆深沪 待内地拍板" class="red" ><b>“半港股直通车”传将登陆深沪 待内地拍板</b></a> </h2> <span>[<a id="a00795" href="http://news.10jqka.com.cn/c/20110620/522797452.shtml" title="资金面再临考验 本周先抑后扬?" >资金面再临考验 本周先抑后扬?</a> <a id="a00796" href="http://news.10jqka.com.cn/c/20110620/522797683.shtml" title="本周解禁市值为偏高水平">本周解禁市值为偏高水平</a> ]</span> <span>[<a id="a00797" href="http://news.10jqka.com.cn/c/20110620/522801144.shtml" title="压力空前 银行股或掀融资高潮" >压力空前 银行股或掀融资高潮</a> <a id="a00798" href="http://forum.10jqka.com.cn/c/20110620/522801149.shtml" title="A股已被榨干 谁来救市?">A股已被榨干 谁来救市?</a> ]</span> <h2 class="tit"><a id="a00799" href="http://news.10jqka.com.cn/c/20110620/522803600.shtml" title="抄底还是割肉 市场已发出5大信号" class="red" ><b>抄底还是割肉 市场已发出5大信号</b></a> </h2> <span>[<a id="a00800" href="http://forum.10jqka.com.cn/c/20110620/522803608.shtml" title="拒绝被市场“欺负”与“气死”" >拒绝被市场“欺负”与“气死”</a> <a id="a00801" href="http://news.10jqka.com.cn/c/20110620/522803606.shtml" title="明股市三大猜想及应对策略">明股市三大猜想及应对策略</a> ]</span> <span>[<a id="a00802" href="http://news.10jqka.com.cn/c/20110620/522803622.shtml" title="银行股可能成首选护盘品种" >银行股可能成首选护盘品种</a> <a id="a00803" href="http://news.10jqka.com.cn/c/20110620/522801201.shtml" title="以史为鉴 2600点难言历史底部">以史为鉴 2600点难言历史底部</a> ]</span> <em class="morenews"><a id="a00804" href="http://index.10jqka.com.cn/list/inews/">更多要闻 >></a></em></div><!--/头条-->HTML; preg_match_all("/<a.+<\/a>/isU",$str,$arr); print_r($arr);Array( [0] => Array ( [0] => <a id="a00794" href="http://news.10jqka.com.cn/c/20110620/522801460.shtml" title="“半港股直通车”传将登陆深沪 待内地拍板" class="red" ><b>“半港股直通车”传将登陆深沪 待内地拍板</b></a> [1] => <a id="a00795" href="http://news.10jqka.com.cn/c/20110620/522797452.shtml" title="资金面再临考验 本周先抑后扬?" >资金面再临考验 本周先抑后扬?</a> [2] => <a id="a00796" href="http://news.10jqka.com.cn/c/20110620/522797683.shtml" title="本周解禁市值为偏高水平">本周解禁市值为偏高水平</a> [3] => <a id="a00797" href="http://news.10jqka.com.cn/c/20110620/522801144.shtml" title="压力空前 银行股或掀融资高潮" >压力空前 银行股或掀融资高潮</a> [4] => <a id="a00798" href="http://forum.10jqka.com.cn/c/20110620/522801149.shtml" title="A股已被榨干 谁来救市?">A股已被榨干 谁来救市?</a> [5] => <a id="a00799" href="http://news.10jqka.com.cn/c/20110620/522803600.shtml" title="抄底还是割肉 市场已发出5大信号" class="red" ><b>抄底还是割肉 市场已发出5大信号</b></a> [6] => <a id="a00800" href="http://forum.10jqka.com.cn/c/20110620/522803608.shtml" title="拒绝被市场“欺负”与“气死”" >拒绝被市场“欺负”与“气死”</a> [7] => <a id="a00801" href="http://news.10jqka.com.cn/c/20110620/522803606.shtml" title="明股市三大猜想及应对策略">明股市三大猜想及应对策略</a> [8] => <a id="a00802" href="http://news.10jqka.com.cn/c/20110620/522803622.shtml" title="银行股可能成首选护盘品种" >银行股可能成首选护盘品种</a> [9] => <a id="a00803" href="http://news.10jqka.com.cn/c/20110620/522801201.shtml" title="以史为鉴 2600点难言历史底部">以史为鉴 2600点难言历史底部</a> [10] => <a id="a00804" href="http://index.10jqka.com.cn/list/inews/">更多要闻 >></a> )) 什么意思啊你想组合成一个字符串?//这样子?preg_match_all("|(<a[^>]*>.+</a>)|U", $str, $out);$result = implode('',$out[1]);echo $result; 正则返回的本来就是数组嘛,想要连在一起的字符串就用 implode 组装一下! preg_match_all("|(<a[^>]*>.+</a>)|U", $str, $out);$result = '';foreach($out[1] as $v) $result .= strip_tags($v);echo $result; foreach($out[1] as $v) $result .= strip_tags($v, '<a>'); //不一定是最优的,但应该可以满足你的需求preg_match_all("|(<a[^>]*>.+</a>)|U", $str, $out);$result = '';foreach($out[1] as $v) $result .= strip_tags($v, '<a></a>');$result = preg_replace("|(<a[^>]*id=\").+(\"[^>]*>)|iU", "$1$2", $result);$result = preg_replace("|(<a[^>]*title=\").+(\"[^>]*>)|iU", "$1$2", $result);echo htmlspecialchars($result); PHP如何获取到长宽用户的真实IP? 关于获取数组路径的问题 门户网站首页这样搞好不好? 请问我如何读入和写入信息到一个公用的内存? 下载的 Smary 手册太难看了,准备把 Smarty 手册做成 CHM 不确定server是否支持PHP,能否进来看一下 求一时间算法 从数据库中检查用户名,如果不存在,就打开注册页面,否则,打开出错页面,怎么办? PHP中有关怎样实现实体javaBeans的问题 菜鸟求救,重装wamp后出现错误:configured -- resuming normal operations php开发 小弟初学,帮忙看下这段代码哪里错了,我找不到原因。
<div class="midbox" alt="上中">
<!--头条--><div class="hotspotnews"><h2 class="tit"><a id="a00794" href="http://news.10jqka.com.cn/c/20110620/522801460.shtml" title="“半港股直通车”传将登陆深沪 待内地拍板" class="red" ><b>“半港股直通车”传将登陆深沪 待内地拍板</b></a> </h2>
<span>[<a id="a00795" href="http://news.10jqka.com.cn/c/20110620/522797452.shtml" title="资金面再临考验 本周先抑后扬?" >资金面再临考验 本周先抑后扬?</a> <a id="a00796" href="http://news.10jqka.com.cn/c/20110620/522797683.shtml" title="本周解禁市值为偏高水平">本周解禁市值为偏高水平</a> ]</span>
<span>[<a id="a00797" href="http://news.10jqka.com.cn/c/20110620/522801144.shtml" title="压力空前 银行股或掀融资高潮" >压力空前 银行股或掀融资高潮</a> <a id="a00798" href="http://forum.10jqka.com.cn/c/20110620/522801149.shtml" title="A股已被榨干 谁来救市?">A股已被榨干 谁来救市?</a> ]</span>
<h2 class="tit"><a id="a00799" href="http://news.10jqka.com.cn/c/20110620/522803600.shtml" title="抄底还是割肉 市场已发出5大信号" class="red" ><b>抄底还是割肉 市场已发出5大信号</b></a> </h2>
<span>[<a id="a00800" href="http://forum.10jqka.com.cn/c/20110620/522803608.shtml" title="拒绝被市场“欺负”与“气死”" >拒绝被市场“欺负”与“气死”</a> <a id="a00801" href="http://news.10jqka.com.cn/c/20110620/522803606.shtml" title="明股市三大猜想及应对策略">明股市三大猜想及应对策略</a> ]</span>
<span>[<a id="a00802" href="http://news.10jqka.com.cn/c/20110620/522803622.shtml" title="银行股可能成首选护盘品种" >银行股可能成首选护盘品种</a> <a id="a00803" href="http://news.10jqka.com.cn/c/20110620/522801201.shtml" title="以史为鉴 2600点难言历史底部">以史为鉴 2600点难言历史底部</a> ]</span>
<em class="morenews"><a id="a00804" href="http://index.10jqka.com.cn/list/inews/">更多要闻 >></a></em></div><!--/头条-->
HTML;preg_match_all("|(<a[^>]*>.+</a>)|U", $str, $out);
print_r($out[1]);
Array
(
[0] => <a id="a00794" href="http://news.10jqka.com.cn/c/20110620/522801460.shtml" title="“半港股直通车”传将登陆深沪 待内地拍板" class="red" ><b>“半港股直通车”传将登陆深沪 待内地拍板</b></a>
[1] => <a id="a00795" href="http://news.10jqka.com.cn/c/20110620/522797452.shtml" title="资金面再临考验 本周先抑后扬?" >资金面再临考验 本周先抑后扬?</a>
[2] => <a id="a00796" href="http://news.10jqka.com.cn/c/20110620/522797683.shtml" title="本周解禁市值为偏高水平">本周解禁市值为偏高水平</a>
[3] => <a id="a00797" href="http://news.10jqka.com.cn/c/20110620/522801144.shtml" title="压力空前 银行股或掀融资高潮" >压力空前 银行股或掀融资高潮</a>
[4] => <a id="a00798" href="http://forum.10jqka.com.cn/c/20110620/522801149.shtml" title="A股已被榨干 谁来救市?">A股已被榨干 谁来救市?</a>
[5] => <a id="a00799" href="http://news.10jqka.com.cn/c/20110620/522803600.shtml" title="抄底还是割肉 市场已发出5大信号" class="red" ><b>抄底还是割肉 市场已发出5大信号</b></a>
[6] => <a id="a00800" href="http://forum.10jqka.com.cn/c/20110620/522803608.shtml" title="拒绝被市场“欺负”与“气死”" >拒绝被市场“欺负”与“气死”</a>
[7] => <a id="a00801" href="http://news.10jqka.com.cn/c/20110620/522803606.shtml" title="明股市三大猜想及应对策略">明股市三大猜想及应对策略</a>
[8] => <a id="a00802" href="http://news.10jqka.com.cn/c/20110620/522803622.shtml" title="银行股可能成首选护盘品种" >银行股可能成首选护盘品种</a>
[9] => <a id="a00803" href="http://news.10jqka.com.cn/c/20110620/522801201.shtml" title="以史为鉴 2600点难言历史底部">以史为鉴 2600点难言历史底部</a>
[10] => <a id="a00804" href="http://index.10jqka.com.cn/list/inews/">更多要闻 >></a>
)
我要[0][1][2]...
这样才能全部取出来。
有办法1个数组内取出来不?
不能循环。不能2次正则?
有没办法?
$str=<<< HTML
<div class="midbox" alt="上中">
<!--头条--><div class="hotspotnews"><h2 class="tit"><a id="a00794" href="http://news.10jqka.com.cn/c/20110620/522801460.shtml" title="“半港股直通车”传将登陆深沪 待内地拍板" class="red" ><b>“半港股直通车”传将登陆深沪 待内地拍板</b></a> </h2>
<span>[<a id="a00795" href="http://news.10jqka.com.cn/c/20110620/522797452.shtml" title="资金面再临考验 本周先抑后扬?" >资金面再临考验 本周先抑后扬?</a> <a id="a00796" href="http://news.10jqka.com.cn/c/20110620/522797683.shtml" title="本周解禁市值为偏高水平">本周解禁市值为偏高水平</a> ]</span>
<span>[<a id="a00797" href="http://news.10jqka.com.cn/c/20110620/522801144.shtml" title="压力空前 银行股或掀融资高潮" >压力空前 银行股或掀融资高潮</a> <a id="a00798" href="http://forum.10jqka.com.cn/c/20110620/522801149.shtml" title="A股已被榨干 谁来救市?">A股已被榨干 谁来救市?</a> ]</span>
<h2 class="tit"><a id="a00799" href="http://news.10jqka.com.cn/c/20110620/522803600.shtml" title="抄底还是割肉 市场已发出5大信号" class="red" ><b>抄底还是割肉 市场已发出5大信号</b></a> </h2>
<span>[<a id="a00800" href="http://forum.10jqka.com.cn/c/20110620/522803608.shtml" title="拒绝被市场“欺负”与“气死”" >拒绝被市场“欺负”与“气死”</a> <a id="a00801" href="http://news.10jqka.com.cn/c/20110620/522803606.shtml" title="明股市三大猜想及应对策略">明股市三大猜想及应对策略</a> ]</span>
<span>[<a id="a00802" href="http://news.10jqka.com.cn/c/20110620/522803622.shtml" title="银行股可能成首选护盘品种" >银行股可能成首选护盘品种</a> <a id="a00803" href="http://news.10jqka.com.cn/c/20110620/522801201.shtml" title="以史为鉴 2600点难言历史底部">以史为鉴 2600点难言历史底部</a> ]</span>
<em class="morenews"><a id="a00804" href="http://index.10jqka.com.cn/list/inews/">更多要闻 >></a></em></div><!--/头条-->
HTML; preg_match_all("/<a.+<\/a>/isU",$str,$arr);
print_r($arr);Array
(
[0] => Array
(
[0] => <a id="a00794" href="http://news.10jqka.com.cn/c/20110620/522801460.shtml" title="“半港股直通车”传将登陆深沪 待内地拍板" class="red" ><b>“半港股直通车”传将登陆深沪 待内地拍板</b></a>
[1] => <a id="a00795" href="http://news.10jqka.com.cn/c/20110620/522797452.shtml" title="资金面再临考验 本周先抑后扬?" >资金面再临考验 本周先抑后扬?</a>
[2] => <a id="a00796" href="http://news.10jqka.com.cn/c/20110620/522797683.shtml" title="本周解禁市值为偏高水平">本周解禁市值为偏高水平</a>
[3] => <a id="a00797" href="http://news.10jqka.com.cn/c/20110620/522801144.shtml" title="压力空前 银行股或掀融资高潮" >压力空前 银行股或掀融资高潮</a>
[4] => <a id="a00798" href="http://forum.10jqka.com.cn/c/20110620/522801149.shtml" title="A股已被榨干 谁来救市?">A股已被榨干 谁来救市?</a> [5] => <a id="a00799" href="http://news.10jqka.com.cn/c/20110620/522803600.shtml" title="抄底还是割肉 市场已发出5大信号" class="red" ><b>抄底还是割肉 市场已发出5大信号</b></a>
[6] => <a id="a00800" href="http://forum.10jqka.com.cn/c/20110620/522803608.shtml" title="拒绝被市场“欺负”与“气死”" >拒绝被市场“欺负”与“气死”</a>
[7] => <a id="a00801" href="http://news.10jqka.com.cn/c/20110620/522803606.shtml" title="明股市三大猜想及应对策略">明股市三大猜想及应对策略</a>
[8] => <a id="a00802" href="http://news.10jqka.com.cn/c/20110620/522803622.shtml" title="银行股可能成首选护盘品种" >银行股可能成首选护盘品种</a>
[9] => <a id="a00803" href="http://news.10jqka.com.cn/c/20110620/522801201.shtml" title="以史为鉴 2600点难言历史底部">以史为鉴 2600点难言历史底部</a> [10] => <a id="a00804" href="http://index.10jqka.com.cn/list/inews/">更多要闻 >></a>
))
preg_match_all("|(<a[^>]*>.+</a>)|U", $str, $out);
$result = implode('',$out[1]);
echo $result;
正则返回的本来就是数组嘛,想要连在一起的字符串就用 implode 组装一下!
$result = '';
foreach($out[1] as $v) $result .= strip_tags($v);
echo $result;
preg_match_all("|(<a[^>]*>.+</a>)|U", $str, $out);
$result = '';
foreach($out[1] as $v) $result .= strip_tags($v, '<a></a>');
$result = preg_replace("|(<a[^>]*id=\").+(\"[^>]*>)|iU", "$1$2", $result);
$result = preg_replace("|(<a[^>]*title=\").+(\"[^>]*>)|iU", "$1$2", $result);
echo htmlspecialchars($result);