我得到了utf8字符集的某些文本,现在我想将它转换成ASCII码,在ASCII码中不支持的字符应该用空格替换。我当前使用的代码是
$input_encoding = mb_detect_encoding($toClean);
mb_substitute_character("long");
$encoded = mb_convert_encoding($toClean, "ASCII", "auto");现在它在输出中显示了像"testU+2013ng“这样的字符,我希望这个U+2013替换为空格。我尝试使用下面的regilar表达式
$encoded = preg_replace("~U\+[\d\w]{4}~", " ", $encoded);现在,它在输出中显示类似"Road‘+CB9 +CA4 +CAEU+“的文本。如何使用preg或其他工具删除所有不支持的字符。
发布于 2010-12-24 17:01:27
我看不出regex有什么特别的问题,但您可以将其简化为:
U\+\d{4}https://stackoverflow.com/questions/4524676
复制相似问题