本帖最后由 php1999 于 2011-06-20 21:00:08 编辑

解决方案 »

  1.   

    $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]);
      

  2.   

    这都是分开的数组呀。。
    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次正则?
    有没办法?
      

  3.   


    $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>
            ))
      

  4.   

    什么意思啊你想组合成一个字符串?//这样子?
    preg_match_all("|(<a[^>]*>.+</a>)|U", $str, $out);
    $result = implode('',$out[1]);
    echo $result;
      

  5.   


    正则返回的本来就是数组嘛,想要连在一起的字符串就用 implode 组装一下!
      

  6.   

    preg_match_all("|(<a[^>]*>.+</a>)|U", $str, $out);
    $result = '';
    foreach($out[1] as $v) $result .= strip_tags($v);
    echo $result;
      

  7.   

    foreach($out[1] as $v) $result .= strip_tags($v, '<a>');
      

  8.   

    //不一定是最优的,但应该可以满足你的需求
    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);