你使用的编码?
另,你如何处理全角的符号等,是否作为中文?你可以用ord函数逐个判断
gb2312编码中全角符号从A1A0开始,汉字从B0A0开始
gbk码看这个地方
http://www.haiyan.com/steelk/navigator/ref/gbk/gbindex2.htm
utf-8看这里
http://www.linuxforum.net/books/UTF-8-Unicode.html
另,你如何处理全角的符号等,是否作为中文?你可以用ord函数逐个判断
gb2312编码中全角符号从A1A0开始,汉字从B0A0开始
gbk码看这个地方
http://www.haiyan.com/steelk/navigator/ref/gbk/gbindex2.htm
utf-8看这里
http://www.linuxforum.net/books/UTF-8-Unicode.html
$a = "asdasd!&aa 中文 aas";
preg_match_all("/[\x80-\xff]/",$a,$r);
echo join('',$r[0]);
?>
function china($str){
$china=preg_replace("/([\x20-\x7f])/","",$str);
return $china;
}
$a = "asdasd!&aa 中文 aas";
echo china($a);
?>