PHP多字节字符串正则表达式
作者:互联网
我们有一个正则表达式可以去除“#”,“&”之外的非字母数字字符和“-”.看起来像这样:
preg_replace('/[^a-zA-Z0-9#&-*]/', '', strtolower($title));
现在,我们需要支持繁体中文字符串,并且以上功能将不起作用.如何为繁体中文实现类似的功能.
谢谢,
解决方法:
使用u修饰符:
preg_replace(`/[^a-zA-Z0-9#&-*诶]/u`, '', $string);
顺便说一句,不要使用strtolower(),因为它会破坏您的字符串.使用mb_strtolower():
mb_strtolower($string, 'UTF-8');
标签:utf-8,php 来源: https://codeday.me/bug/20191208/2088589.html