$var="……/address/upload/forum9_f_515.jpg[…]myprogram.jpg[/color]…";preg_match_all("|(/upload/)?\w+\.\w+|",$var,$regs);
print_r($regs);或
preg_match_all("|(?:/upload/)?\w+\.\w+|",$var,$regs);
print_r($regs);

解决方案 »

  1.   

    不要前面的upload也给带进去。只要文件名
      

  2.   

    preg_match_all("|(?:/upload/)?(\w+\.\w+)|",$var,$regs);
      

  3.   

    Array ( [0] => Array ( [0] => /upload/forum9_f_515.jpg [1] => myprogram.jpg ) [1] => Array ( [0] => forum9_f_515.jpg [1] => myprogram.jpg ) ) 可以只得出第二个数组么?^_^