通过正则过滤非法的汉字或字符
程序员文章站
2022-04-26 17:07:28
...
非法的汉字会影响到显示甚至程序的执行,会出现一些意想不到的结果。所以我们需要过滤这些非法的汉字或字符。 代码如下 function normalizeText($text, $length = null){ $text = \Normalizer::normalize($text, \Normalizer::FORM_C); $text = preg_replace
非法的汉字会影响到显示甚至程序的执行,会出现一些意想不到的结果。所以我们需要过滤这些非法的汉字或字符。
代码如下
function normalizeText($text, $length = null) { $text = \Normalizer::normalize($text, \Normalizer::FORM_C); $text = preg_replace('/[^\p{L}\p{P}\p{N}\p{S}\p{Zs}]/u', "", $text); $text = preg_replace('/^\p{Z}*/u', "", $text); $text = preg_replace('/\p{Z}*$/u', "", $text); if ($length !== null) { $text = mb_substr($text, 0, $length, 'utf-8'); } return $text; }
本文出自:http://www.jxm.cc, 原文地址:http://www.jxm.cc/blogs/527.html, 感谢原作者分享。