.h_nav {
 MARGIN: 0px; WIDTH: 920px; BACKGROUND: url(/service/images/nav_bgmid.gif) repeat-x 50% top; FLOAT: left; HEIGHT: 66px
}
.h_nav1 {
 BACKGROUND: url(/service/images/nav_bgright.gif) no-repeat right 50%
}
.h_nav2 {
 PADDING-LEFT: 10px; BACKGROUND: url(/service/images/nav_bgleft.gif) no-repeat left 50%; HEIGHT: 66px
}比如是这个CSS文件我想把里面url()里面的值全部取出来问下应该怎么做?比如上面取出来的应该是/service/images/nav_bgmid.gif/service/images/nav_bgright.gif/service/images/nav_bgleft.gif求助

解决方案 »

  1.   

    preg_match_all('/url\((.*)\)/is', $string, $matches);
    print_r($matches);
      

  2.   

    运行以下代码即可输出结果数组:<?php
    $a = <<<HTML
    .h_nav {
     MARGIN: 0px; WIDTH: 920px; BACKGROUND: url(/service/images/nav_bgmid.gif) repeat-x 50% top; FLOAT: left; HEIGHT: 66px
    }
    .h_nav1 {
     BACKGROUND: url(/service/images/nav_bgright.gif) no-repeat right 50%
    }
    .h_nav2 {
     PADDING-LEFT: 10px; BACKGROUND: url(/service/images/nav_bgleft.gif) no-repeat left 50%; HEIGHT: 66px
    }
    HTML;preg_match_all('/url\((.+?)\)/i',$a,$arr);var_dump($arr[1]);//把所有url()里面的值都放到$arr[1]这个数组里了
    ?>
      

  3.   

    preg_match_all('/url\((.*)\)/is', $string, $matches);
    print_r($matches);
      

  4.   

    preg_match_all('/url\((.*)\)/U', $string, $out);
    print_r($out);
      

  5.   


    $str = "
    .h_nav {
     MARGIN: 0px; WIDTH: 920px; BACKGROUND: url(/service/images/nav_bgmid.gif) repeat-x 50% top; FLOAT: left; HEIGHT: 66px
    }
    .h_nav1 {
     BACKGROUND: url(/service/images/nav_bgright.gif) no-repeat right 50%
    }
    .h_nav2 {
     PADDING-LEFT: 10px; BACKGROUND: url(/service/images/nav_bgleft.gif) no-repeat left 50%; HEIGHT: 66px
    }";
    preg_match_all ( "|url\((.*)\)|U", $str , $out , PREG_PATTERN_ORDER);print_r($out[1]);