Php 如何从字符串中删除特殊标记

Php 如何从字符串中删除特殊标记,php,Php,我有一根像 “位于亚琛福格阿奎斯广场的格·乌米盖斯学生公寓!” 我想删除字符串中的特殊字符。 我已经为此使用了strip_标签和htmlspecialchars。但不起作用。您可以使用preg\u replace删除这些特殊字符 例如: $output=preg_replace('/[^(\x20-\x7f)]*/s','',$string); 差不多 function clean($string) { $string = str_replace(' ', '-', $string);

我有一根像

“位于亚琛福格阿奎斯广场的格·乌米盖斯学生公寓!”

我想删除字符串中的特殊字符。
我已经为此使用了strip_标签和htmlspecialchars。但不起作用。

您可以使用
preg\u replace
删除这些特殊字符

例如:

$output=preg_replace('/[^(\x20-\x7f)]*/s','',$string);
差不多

function clean($string) {
   $string = str_replace(' ', '-', $string); // Replaces all spaces with hyphens.

   return preg_replace('/[^A-Za-z0-9\-]/', '', $string); // Removes special chars.
}
用法:

echo clean('a|"bc!@£de^&$f g');
输出:

abcdef-g


这些html实体看起来像字母字符。第一个和最后一个是,因此您可能需要确保确实要完全删除这些标记,或者只将它们转换为常规字符只需将它们转换为常规字符。此字符串中没有要删除的标记。你到底期望最终结果是什么?我想你们在降级之前并没有阅读这个问题。你真的不明白我的意思吗。我需要在php“html\u实体\u解码”中使用此函数。感谢您的关注。可能的副本