刚刚找了下所有的汉字, 使用gbk编码 utf8编码. 两种方式存储. 然后, 用mb_check_encoding函数检测.
gbk编码的时候, 检测是否为utf8. 检测通过的文字一共有1920个.
utf8编码的时候,检测是否为gbk. 检测通过的文字一共有327个.
汉字总数是20881个.
测试utf8编码的汉字. 连续两个一起,被识别为gbk的可能性几乎为0(测试的时候是0个,但是可能两个连续的可被识别为gbk的就悲剧了)
------------------ 原始邮件 ------------------
发送时间: 2012年10月6日(星期六) 晚上11:18
主题: Re: [thinkinlamp] 请教大家一个关于php字符串查找与替换来过滤垃圾信息的问题
估计原因是编码不一致。
两种解决方案:
1.确定要过滤的文字$newinfo的编码,然后将敏感字符"務"转成相同编码,再进行过滤
2.如果不好确定过滤文字编码,将敏感字符转成各种可能编码,再进行过滤
2012/10/6 Marvin Ma
<samo...@gmail.com>
如果你是UTF8编码的话,可以用 preg_replace() 来实现:
$newinfo='惠州有小q姐包夜Q服務电话182xxxxxxx8';
$re = preg_replace("/務/u", "", $newinfo);
print_r($re);--
Best Regards,
Marvin Ma
QQ:397337097 Sina:@三马 Tel:15921270388
--
ThinkingInLAMP邮件组使用说明:http://blog.thinkinlamp.com/?p=758
--
童中波
工程帅/研发中心-WEB研发部
湖北盛天网络技术股份有限公司
Hubei Century Network Technology Co., Ltd.
Fax: (86-27) 8749 8500
Add:武汉市东湖高新技术开发区国际企业中心2期1栋
Zip code: 430074
--
ThinkingInLAMP邮件组使用说明:
http://blog.thinkinlamp.com/?p=758