看网页的一个正则的例子,出错了。帮看一下那错了呗。最好帮解释一下各个符号的意思,正在学//取出 div 标签,且ID 为 PostContent 的内容,并存到阵列 match 中。preg_match('/<div[^>]*id="PostContent"[^>]*>(.*?) <//div>/si',$text,$match); 这个正则是不是 perl 风格的。不是 POSIX风格 的。学的二个有点乱。
好想弄明白这个。出错信息:
Warning: preg_match() [function.preg-match]: Unknown modifier '/' in D:\xampp\htdocs\testweb02\t1.php on line 6

解决方案 »

  1.   

    http://www.yesky.com/imagesnew/software/vbscript/html/jsgrpRegExpSyntax.htm
      

  2.   

    preg_match('/<div[^>]*id="PostContent"[^>]*>(.*?) <//div>/si',$text,$match);  
    改成
    preg_match('/<div[^>]*id="PostContent"[^>]*>(.*?) <\/div>/si',$text,$match);  
    或者
    preg_match('/<div[^>]*id="PostContent"[^>]*>(.*?) <\/\/div>/si',$text,$match);  
      

  3.   

    这个是vbscript 跟 PHP通用吗?
      

  4.   

    $text=file_get_contents('http://roll.news.sina.com.cn/news/shxw/fz-shyf/index.shtml');    
      
    preg_match('/<ul[^>]*class="list_009"[^>]*>(.*?) <\/ul>/si',$text,$match); 
    或者用这个  preg_match('/<ul[^>]*class="list_009"[^>]*>(.*?) <\/\/ul>/si',$text,$match); 
    print_r($match);  
    这个不出错了。
    只是显示的是:
    Array ( )只是想取出 <ul class="list_009"> *** </ul>间的数据。
    还是没成。返回的是空。
      

  5.   

    我也是刚刚学的正则表达式,高深的也不懂,说一个方法,不知道是不是你想要的。
    要是想取到那个里面的内容,可以用eregi("<ul class=\"list_009\">(.*)</ul>",$content,$eg);
    其中的$content=file_get_contents($url);$url是你要截取的内容网站的url,而$eg储存了你要保存的内容。
    然后echo $eg[1];就可以取出里面的内容了,至于$eg是一个数组,里面具体都是什么,我也不是很清楚,你可以看一下eregi函数的相关知识。