本帖最后由 tomieopie 于 2012-01-23 13:50:15 编辑

解决方案 »

  1.   


    $html = <<<html
    <IMG style='MARGIN: 5px auto; DISPLAY: block' border=0 src='http://www.xxx.com/images/uploads/20090202/15/44368931200902021536311006770594255.jpg' rel='item' item='36889211'>
    <IMG src='http://www.xxx.com/images/uploads/20090121/14/44368931200901211455346411352065834.jpg' width=422 height=287>
    <IMG border=0 src='http://www.xxx.com/images/uploads/20090226/443689312009022617464104.jpg' width=500 height=343>
    <IMG border=0 src=http://www.xxx.com/images/uploads/20090226/17/44368931200902261721374265151069212.jpg width=500 height=436>
    <IMG style='MARGIN: 5px auto; DISPLAY: block' border=0 src='http://www.xxx.com/images/uploads/20090202/15/44368931200902021536311006770594255.jpg' rel='item' item='36889204'>
    html;
    $html = preg_replace ( '/http:\/\/www.xxx.com\/images\/uploads\//isU', '/images/myfile/', $html );
    echo $html;
    如果是这个的话直接用 str_replace($search, $replace, $subject) 就可以了 。不知道里面的/15/是不是不要的,不要的话再用个str_replace吧,哈哈..
      

  2.   


    哇。这么快有热心人回复了哦。
    多谢多谢。。新年快乐!!哈哈那个我忘记说了。真不好意思。那个15是动态的哦。有可能不是15.或者没有。所有就只拿到Ymd那个文件夹即可。
      

  3.   

    修改成
    $html = preg_replace ( '/http:\/\/www.xxx.com\/images\/uploads\/(20[0-9]+)\/[0-9]+\//', '/images/myfile/$1/', $html );