PHP-preg_replace for/[[:punct:]/isn';t删除双引号

PHP-preg_replace for/[[:punct:]/isn';t删除双引号,php,Php,我正在尝试去除以下字符串中的标点符号“Peter!!!!!!!MacIntyre”(包括字符串末尾的引号)。我正在使用以下代码: $filterItem = filter_var($searchTearm, FILTER_SANITIZE_STRING); $duplicatePunctuation = preg_replace('/[[:punct:]]/', ' ', strval($filterItem)); $output = $duplicatePunctuation; 我得到的输出

我正在尝试去除以下字符串中的标点符号
“Peter!!!!!!!MacIntyre”
(包括字符串末尾的引号)。我正在使用以下代码:

$filterItem = filter_var($searchTearm, FILTER_SANITIZE_STRING);
$duplicatePunctuation = preg_replace('/[[:punct:]]/', ' ', strval($filterItem));
$output = $duplicatePunctuation;
我得到的输出是彼得·麦金太尔34。感叹号按原样替换。但是,双引号正在转换为数字34。我试着用stru_替换,但它无法移除它们


我还尝试了
$duplicatePerception=str_replace(chr(34),'',strval($filterItem))

过滤\u清理\u字符串:它去除标记,HTML编码双引号和单引号,可以选择去除或编码特殊字符。可以通过设置过滤器\标志\否\编码\引号来禁用编码引号


我通过使用

$removeDoubleQuotes = trim(html_entity_decode($filterItem), '"');
$removeDoubleQuotes = trim(html_entity_decode($filterItem), '"');