http://bbs.10jqka.com.cn/codelist.html
获取以上链接里面的部分内容
有深市、沪市、基金三种
我需要获取的是股票名称和股票代码例如: 
<li><a href="http://bbs.10jqka.com.cn/sh,600000,1" target="_blank" title="浦发银行">浦发银行 600000</a></li>
<li><a href="http://bbs.10jqka.com.cn/sh,600004,1" target="_blank" title="白云机场">白云机场 600004</a></li>获取结果
浦发银行 600000
白云机场 600004能直接获取成
$a=array("600000"=>"浦发银行")
这样的数组就更好了在此先谢谢各位大神了
正则表达式

解决方案 »

  1.   

    preg_match_all('/<li><a[^>]+>(.+)<\/a><\/li>/isU',$s,$m);
    print_r($m[1]);
      

  2.   


    $str=<<<STR
    <li><a href="http://bbs.10jqka.com.cn/sh,600000,1" target="_blank" title="浦发银行">浦发银行 600000</a></li>
    <li><a href="http://bbs.10jqka.com.cn/sh,600004,1" target="_blank" title="白云机场">白云机场 600004</a></li>
    STR;
     
    preg_match_all("/(\S+)\s+(\d+)/",preg_replace("/<\/?[^>]+?>/",'',$str),$out,PREG_SET_ORDER); 
     
    foreach($out as $a) list($s,$o[$i],$i)=$a;
    print_r($o);
      

  3.   

    <?php
    $url ="http://bbs.10jqka.com.cn/codelist.html";
    $str = file_get_contents($url);
    preg_match_all('/<li><a[^>]+>([^\d]+)(\d{6})<\/a><\/li>/isU',$str,$match);
    $a = array_combine(array_values($match[2]),array_values($match[1]));
    print_r($a);
      

  4.   


    谢谢,你的这个可以用的
    请问下,要怎么把生成的这个数组由gbk的转成utf8的?
    试了几种都转失败了
      

  5.   

    $url ="http://bbs.10jqka.com.cn/codelist.html";
    $str = file_get_contents($url);
    $str = iconv('gbk', 'utf-8', $str);
    preg_match_all('/<li><a[^>]+>([^\d]+)(\d{6})<\/a><\/li>/isU',$str,$match);
    $a = array_combine(array_values($match[2]),array_values($match[1]));
    print_r($a);
      

  6.   

    preg_match_all('/<li><a[^>]+>([^\d]+)(\d{6})<\/a><\/li>/isU',$str,$match);
    改为
    preg_match_all('/<li><a[^>]+>([^\d]+)([036]\d{5})<\/a><\/li>/isU',$str,$match);