我有一个类似:{filedir_12}somepic.png
的字符串,我想通过preg_match()
将其转换为:somepic.png
,或者可能是类似的字符串。我该如何实现?
$str = '{filedir_12}somepic.png';
$str = preg_replace('/{['w_]+}(['w_]+)/','$1',$str);
basename()
就是您所需要的。它从一个路径中剥离目录(以及可选的扩展):
php > echo basename('/my/directory/and/my/file.txt');
file.txt
您不需要正则表达式。只需使用str_replace()
:
$file = '{filedir_12}somepic.png';
$file = str_replace('{filedir_12}', '', $file);
编辑:如果您的意思不是字面上删除"{filedir_12}"字符串,实际上只是想从完整的文件路径中删除该目录,那么使用basename()。