正则替换掉最右边的一个点$str = "abc/test.test.jpg"; echo preg_replace('/(\.)/', '#', $str); 我只是想把最右边的.找成# 正则 分享到: ------解决方案--------------------echo preg_replace('/\.([^.]+)$/', '#$1', $str);------解决方案--------------------preg_replace('/(.+)\.([^\.]+)/', '$1#$2', $str);