如果文件名中有一个引号,则使用Replace删除文件扩展名失败

如果文件名中有一个引号,则使用Replace删除文件扩展名失败,replace,preg-replace,Replace,Preg Replace,有一个与名字相关联的jpg列表,我正在使用replace函数删除扩展名 $withoutExt=preg\u replace('/\\..[^.\\s]{3,4}$/',''.$filename) 这是我从这个网站的另一个帖子上抓到的。除了有O'Reilly或O'Neil(名字中有撇号)的人外,它工作得非常完美。任何帮助都将不胜感激非常适合我,例如: <?php $filename = 'O\'Reilly.jpg'; $withoutExt = preg_replace('/\\.[^

有一个与名字相关联的jpg列表,我正在使用replace函数删除扩展名
$withoutExt=preg\u replace('/\\..[^.\\s]{3,4}$/',''.$filename)

这是我从这个网站的另一个帖子上抓到的。除了有O'Reilly或O'Neil(名字中有撇号)的人外,它工作得非常完美。任何帮助都将不胜感激

非常适合我,例如:

<?php

$filename = 'O\'Reilly.jpg';
$withoutExt = preg_replace('/\\.[^.\\s]{3,4}$/', '', $filename);
echo $withoutExt . "\n";

感谢您的输入,我知道您在这里做什么,但我从名称列表中获取这些名称,这会使解析每个名称变得困难,如果名称前面有一个“放置转义字符”,我可能需要稍微处理一下。我希望有一种方法可以在正则表达式中实现。谢谢,我会看看我是否能让它通过列举名单的名字。。。