PHP版本
/**
* @notes: 过滤不合法的utf8字符
* @param int|string|null $str
* @return array|string|string[]|null
* @author: lavender
* @time: 2024/5/22 13:39
*/
function filter_partial_utf8char(int|string|null $str): array|string|null
{
if (empty($str)) {
return '';
}
return preg_replace_callback(
'/./u',
function (array $match) {
return strlen($match[0]) >= 4 ? '' : $match[0];
}, $str);
}
下面附上JS版本的
//过滤不合法的utf8字符
function filterPartialUtf8Char(str) {
return str.replace(/./gu, match => match.length >= 4 ? '' : match);
}