<div class="bag" ui_id="2" id="test_id"><div class="zj_h"><{$ud_title}></div><div class="zj1_b_pic"><img src="<{$ud_small}>"></img></div><div class="zj1_b_content"><{$content}></div><br /><div class="bag" ui_id="1" id="test_id"><div class="zj_logo"><img src="<{$log_pic}>" alt="logo"></img></div></div><br />上面一段html代码,我想得到$ud_title,$content……也就是"<{"和"}>"之间的内容谁能帮我下,给个正则表达式。
急用。。谢谢了。

解决方案 »

  1.   

    <?php
    $a='<div class="bag" ui_id="2" id="test_id"><div class="zj_h"><{$ud_title}></div><div class="zj1_b_pic"><img src="<{$ud_small}>"></img></div><div class="zj1_b_content"><{$content}></div><br /><div class="bag" ui_id="1" id="test_id"><div class="zj_logo"><img src="<{$log_pic}>" alt="logo"></img></div></div><br />';
    preg_match_all("/\b(\<\{)\w+(\}\>)\b/",$a,$b);
    echo $b[0];?>
    我是这么做的,但是总是输出array,不知道为什么。。我也刚学正则,互相学习一下
      

  2.   

    preg_match_all("/\b(\<\{)\w+(\}\>)\b/",$a,$b);//这个应该没有问题的。再等等高手吧
      

  3.   

    瞄一眼,正则很多东西都不懂ing
      

  4.   


    $content = file_get_contents("csdn.txt");//你的字符串我写到这个TXT文件里了 
    $preg = "/<{([^}]+)}>/";
    preg_match_all($preg,$content,$out);
    print_r($out);
    另外说明一下,preg_match_all()这个函数匹配到的结果,也就是上面的$out是一个多维数组,所以楼主
     $b['0'] 也是一个数组,而不是一个字符串,因此echo $b['0'] 自然返回array,查看匹配结果  用
    print_r()函数,具体preg_match_all()函数的用法,楼主自己去网上查吧,我就不啰嗦了。