代码中有好多类似
href="Table%2094.xml#9403.20.0015"
这样的代码,里面的Table和xml#是不变的,但是地址中,这2个字符之间的%2094.会变的。
我希望把Table和xml# 这一段,统一修改为 htscode?code=上面的地址修改后希望是href="htscode?code=9403.20.0015"谢谢

解决方案 »

  1.   


    $str = <<<HTML
    href="Table%2094.xml#9403.20.00gew15"<br/>
    href="Table%ee94.xml#9403.20.001few5"<br/>
    href="Table%fes2094.xml#94ww03.20.0015"
    HTML;$str = preg_replace('/Table.*xml#(.*)/', "htscode?code=\$1", $str);
    echo $str;
    /*
    输出结果:
    href="htscode?code=9403.20.00gew15"
    href="htscode?code=9403.20.001few5"
    href="htscode?code=94ww03.20.0015"
    */
      

  2.   

    <?
    $str='href="Table%2094.xml#9403.20.0015"';
    preg_match_all('/href=\"(.*).xml\#/',$str,$dd);
    $cc=$dd[1][0];
    $zz='htscode?code=';
    $ddr=str_replace($cc,$zz,$str);
    echo($ddr);
    ?>
      

  3.   

    <?
    $str='href="Table%2094.xml#9403.20.0015"';
    preg_match_all('/href=\"Table(.*).xml\#/',$str,$dd);
    $cc=$dd[0][0];
    $zz='htscode?code=';
    $ddr=str_replace($cc,$zz,$str);
    echo('href="'.$ddr);
    ?>
      

  4.   

    <?
    $str='href="Table%2094.xml#9403.20.0015"';
    preg_match_all('/href=\"Table(.*).xml\#/',$str,$dd);
    echo('href="'.str_replace($dd[0][0],'htscode?code=',$str));
    ?>