$str = '<price>匹配字符</price>';$pattan="/(<price[^>]+>)(.*?)(<\/price>)/is";preg_match_all($pattan, $str, $matches);print_r($matches[2]);临时写的没调试不知道对不对。
你自己试试吧。

解决方案 »

  1.   

    <?php    $str = '<price>匹配字符</price>';
        $pattan="!(<price>)(.*)(</price>)!is";
        preg_match_all($pattan, $str, $matches);
        print_r($matches[2]);?>
      

  2.   

    preg_match_all('<price>.*?<\/price>/gi',$str,$out)
      

  3.   

    preg_match_all('<price>(\n|.)+<\/price>/Ui',$str,$out)
      

  4.   

    <?php
    $str="gfdsg
    gfsd
    <price>g
    sdf
    g
    dfs
    g
    </price>
    df
    sg";
    echo "<pre>";
    preg_match_all("/<price>(.+)<\/price>/Uixs",$str,$out);
    echo $out[1][0];
    ?>
      

  5.   

    <?php
    $str="gfdsg
    gfsd
    <price>g
    sdf
    g
    dfs
    g
    </price>
    df
    sg";
    echo "<pre>";
    preg_match_all("|<price>(.*?)<\/price>|Uixs",$str,$out);
    print_r($out[1][0]);
    ?>
      

  6.   


    <?php
    $str="gfdsg
    gfsd
    <price>g
    sdf
    g
    dfs
    g
    </price>
    <price>
    12
    234
    456
    565</price>
    df
    sg";
    echo "<pre>";
    preg_match_all("|<price>(.*?)<\/price>|Uixs",$str,$out);
    print_r(htmlspecialchars($out[0][0]));
    print_r($out[1][0]);
    ?>
      

  7.   

    怎么这个都不能解决吗?
    preg_match_all('<price>(\n|.)+<\/price>/giU',$str,$ar)伊拉克本来就不弱呀,不过真不简单,国家都成那样了,足球还没有落后,佩服呀!