Php 删除utf中的垃圾字符
我使用utf8格式将所有数据存储到mysql中。在将数据插入数据库之前,我需要清除带有不需要的字符的字符串。字符串采用utf8格式。我知道如何使用正则表达式和字符串替换,但不知道如何使用阿拉伯语字符 需要清理的示例字符串:”████ .. الــقــوانين الجديـــدة في قســـم الـعنايـ"; 谢谢你好的。如前所述,如果可以为需要替换的字符指定unicode字符范围,则可以使用正则表达式将字符替换为空字符串 unicode字符在表达式(PHP)中指定为Php 删除utf中的垃圾字符,php,regex,arabic,Php,Regex,Arabic,我使用utf8格式将所有数据存储到mysql中。在将数据插入数据库之前,我需要清除带有不需要的字符的字符串。字符串采用utf8格式。我知道如何使用正则表达式和字符串替换,但不知道如何使用阿拉伯语字符 需要清理的示例字符串:”████ .. الــقــوانين الجديـــدة في قســـم الـعنايـ"; 谢谢你好的。如前所述,如果可以为需要替换的字符指定unicode字符范围,则可以使用正则表达式将字符替换为空字符串 unicode字符在表达式(PHP)中指定为\x{FF
\x{FFFF}
。此外,您必须设置模式,使PHP将模式视为UTF8
所以最后,你会得到这样的结果:
preg_replace('/[\x{FFFF}-\x{FFFF}]+/u','',$string);
在哪里
是分隔符加上修饰符/…/u
是一个字符类加上量词,这意味着在一次或多次内匹配这些字符中的任何一个[…]+
是一个unicode字符范围(显然,您必须提供正确的字符编码点/编号)\x{FFFF}-\x{FFFF}
^
对组进行否定您可以指定要保留的范围:
preg_replace('/[^\x{FFFF}-\x{FFFF}]+/u','',$string);
更多信息:
- 好的。如前所述,如果可以为需要替换的字符指定unicode字符范围,则可以使用正则表达式将字符替换为空字符串
unicode字符在表达式(PHP)中指定为
\x{FFFF}
。此外,您必须设置模式,使PHP将模式视为UTF8
所以最后,你会得到这样的结果:
preg_replace('/[\x{FFFF}-\x{FFFF}]+/u','',$string);
在哪里
是分隔符加上修饰符/…/u
是一个字符类加上量词,这意味着在一次或多次内匹配这些字符中的任何一个[…]+
是一个unicode字符范围(显然,您必须提供正确的字符编码点/编号)\x{FFFF}-\x{FFFF}
^
对组进行否定您可以指定要保留的范围:
preg_replace('/[^\x{FFFF}-\x{FFFF}]+/u','',$string);
更多信息: