PHP判断字符串是否为中文(或英文)的方法,除了正则表达式判断和拆分字符判断字符的值是否小于128
外还有一种比较特别的方法。
使用php中的mb_strlen和strlen函数判断
方法比较简单:分别使用以上两个函数以当前编码测出字符的返回值,然后比较返回值。
返回值相等的为纯英文、纯数字、英数混排;
返回值不等,且strlen返回值可被mb_strlen整除的为纯汉字
返回值不等,且strlen返回值不可被mb_strlen整除的为英汉或数汉混排
看一下以下的例子:
<?php
$strarray[1] = "hello";
$strarray[2] = "123456";
$strarray[3] = "123hello";
$strarray[4] = "你好";
$strarray[5] = "123你好";
$strarray[6] = "hello你好";
$strarray[7] = "123hello你好";
foreach ($strarray as $key->$value)
{
$x = mb_strlen($value,'gb2312');
$y = strlen($value);
echo $strarray[$key].' <span style="color: #ff0000;">'.$x.'</span> <span style="color:#ff0000;">'.$y.'</span>';
}
?>
运行后的结果是:
hello 5 5
123456 6 6
123hello 8 8
你好 2 4
123你好 5 7
hello你好 7 9
123hello你好 10 12
来源: http://007blogchina.appspot.com/?p=130001
HP没有直接函数来判断一个字符串是否是纯英文或纯汉字以及汉英混合,只能自己写函数。要想实现此功能就必需对字符集汉字编码占位进行了解,就目前国内比较常用的字符集当属UTF8与GBK了。
UTF8每个汉字等于3个长度;
GBK每个汉字等于2个长度;
利用以上汉字与英文的差异,我们就可以利用mb_strlen函数与strlen函数分别计算出两组长度数字,然后根据规律进行运算即可判断出字符串的类型了。
UTF-8实例
<?php
/**
* PHP判断字符串纯汉字 OR 纯英文 OR 汉英混合
*/
echo '<meta charset="utf-8" />';
function utf8_str($str){
$mb = mb_strlen($str,'utf-8');
$st = strlen($str);
if($st==$mb)
return '纯英文';
if($st%$mb==0 && $st%3==0)
return '纯汉字';
return '汉英混合';
}
$str = '博客';
echo '字符串:<span style="color:red">'.$str.'</span>,是<span style="color:red">'.utf8_str($str).'</span>';
?>
GBK方法
function gbk_str($str){
$mb = mb_strlen($str,'gbk');
$st = strlen($str);
if($st==$mb)
return '纯英文';
if($st%$mb==0 && $st%2==0)
return '纯汉字';
return '汉英混合';
}
来源: http://www.qttc.net/201207142.html
分享到:
相关推荐
WELearn大学英语能力突破:汉英翻译精讲课后练习.pdf
一个比较好的汉英,汉英字典,一个比较好的汉英,汉英字典
汉英中华文化图解词典
英汉汉英词库 json格式
新世纪汉英科技大词典 专业词汇查询字典
21世纪英汉汉英双向词典 英语 ⇒ 中文(简体), 中文(简体) ⇒ 英语
一个简版的汉英 英汉词典
多功能的新世纪汉英科技大辞典,可以供专业课的人士查询,方便快捷,我们学校一直用了好多年
包含汉英词典数据库和英汉词典数据库两个数据库。汉英词典数据库根据汉字第一个字的声母折分成各表,英汉词典数据库根据英语词语的第一个英文拆分成各表。
一些考博中常用的英语翻译30句 基本的常用的技巧的都很实用
理解当代中国英语读写教程核心术语汉英对照.xlsx
朗道英汉汉英词典.BGL 完美支持Goldendict的汉英互译的词库
这个汉英机器翻译软件来自中科院计算所和北大计算语言所大约于2000年合作完成的汉英机器翻译系统
Java 汉英词典 Java 汉英词典
自己在电脑和手机上都在用的,非常方便,离线使用,查词速度非常快。新世纪汉英大词典 柯林斯英汉双解 朗文英汉双解 麦克米伦高阶英汉双解 牛津英汉汉英词典 现代英汉汉英大辞典 新汉英大辞典
通信工程专业英语汉英对照.pdf
汉英词典,是用asp做的,有数据库,可以在自己建立的服务器中运行
本文旨在探讨汉英文学翻译中文化传播的可能性和局限性,即在这一过程中文化能否成功传播。 同时,根据相关理论,将对《围城要塞》(卫城的英文版)进行系统的文化翻译研究。 为了实现本研究的既定目标,本文首先对...
英语国家概况(汉英对照).doc