首页 >php教程 >php手册 >PHP判断字符串是纯英文、纯汉字或汉英混合

PHP判断字符串是纯英文、纯汉字或汉英混合

WBOY
WBOY原创
2016-06-13 10:04:101095浏览

下面是我收藏的一些PHP判断字符串是纯英文、纯汉字或汉英混合 实例,大家可参考。

纯英文

 代码如下 复制代码

if(preg_match("/^[a-z]*$/i",   "fdsFDfd")) 

 echo   "全字母 

 "; 

 } 

纯汉字

 代码如下 复制代码

比如:
var str = "php编程";
if (/^[u4e00-u9fa5]+$/.test(str)) {
alert("该字符串全部是中文");
}
else{
alert("该字符串不全部是中文");
} php中,是用x表示十六进制数据的。于是,变换成如下的代码:
$str = "php编程";
if (preg_match("/^[x4e00-x9fa5]+$/",$str)) {
print("该字符串全部是中文");
} else {
print("该字符串不全部是中文");
}


汉英混合
 
用户名:包括英文小写、汉字、数字、下划线,不能全部是数字,下划线不能在末尾

 代码如下 复制代码

/^[a-z0-9_u4e00-u9fa5]+[^_]$/g utf-8下

preg_match("/^[a-z0-9_x80-xff]+[^_]$/g",$a);gbk下:

preg_match("/^[a-z0-9_".chr(0xa1)."-".chr(0xff)."]+[^_]$/",$a)


utf-8编码

 代码如下 复制代码


/**
 * PHP判断字符串纯汉字 OR 纯英文 OR 汉英混合
 * 琼台博客
 */
echo '';
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 '字符串:'.$str.',是'.utf8_str($str).'';
?>

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 '汉英混合';
}

数字中文汉字

 代码如下 复制代码

$username=$_REQUEST['username'];
if(!preg_match("/^[a-z0-9xa1-xff]{3,10}$/",$username))
 {
  echo"34r345";
  exit;
 }

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn