我想允许所有utf8字符,但想用空格或-
这是绳子
Punjab me 1Train🚊 k niche 100 👳Sardar aa gaye..
99 Mar gaye...
1 Bach gaya
我所做的一切都不是在列车后插入
在火车上修剪
我试过这两个环节
Remove non-utf8 characters from string
Replacing invalid UTF-8 characters by question marks, mbstring.substitute_character seems ignored
我希望在mysql中插入完整的utf8范围,并用空格或-
$string = preg_replace('/[^(\x20-\x7F)]*/','', $string);
适用于上述情况,但当我使用印地语/中文时,它也会取代它。所以我不能使用上述代码
最佳答案
试试这个:对于Unicode只使用修饰符u
$re = "/[^(\\x20-\\x7F\\n)]+/u";
$str = "Punjab me 1Train🚊 k niche 100 👳Sardar aa gaye..\n\n99 Mar gaye...\n\n1 Bach gaya";
$subst = "";
$result = preg_replace($re, $subst, $str);
Live demo