$str = 'abc…1…好……(...234*&(*&))( ※ o(∩_∩)o哈! √ (⊙o⊙)? '; //过滤除英文和汉字的其它特殊符号 $tmp = str_replace($replacearr, '', $str); $tmp1 = preg_replace('/(?![a-za-z\x{4e00}-\x{9fa5}])/', '', $str); //这个是实际要求 $tmp2 = preg_replace('/([\x80-\xff])/', '', $str); //这个是过滤汉字 $tmp3 = preg_replace('/[\x{4e00}-\x{9fa5}]/u', '', $str); //这个也是过滤汉字 echo "str: {$str} <pre class="brush:php;toolbar:false;">"; var_dump($tmp); echo '"; var_dump($tmp1); echo '
"; var_dump($tmp2); echo '
"; var_dump($tmp3); echo '
$str = 'abc…1…好……(...234*&(*&))( ※ O(∩_∩)O哈! √ (⊙o⊙)? ';$str = iconv('gbk', 'utf-8', $str);$str = preg_replace('/[W_]/u', '', $str);$str = iconv('utf-8', 'gbk', $str);echo $str;像搜狗表情中的特殊符号,还是没法过滤掉么?
那个看来是字母,我搞错了!
感谢xu大大的支持!
版主,我刚才忽略了一个问题,我按照你的代码运行的结果,是没有汉字的:
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号