欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

php 判断是否是中文/英文/数字示例代码

程序员文章站 2022-07-17 22:40:30
复制代码 代码如下: $str='asb天水市12'; if (preg_match("/^[\x7f-\xff]+$/", $str)){ echo '全部是汉字'; }...
复制代码 代码如下:

$str='asb天水市12';

if (preg_match("/^[\x7f-\xff]+$/", $str)){
echo '全部是汉字';
}else {
echo '不全是汉字';
}
/**
php自带的判断是否是中文,
eregi('[^\x00-\x7f]', $str ) //中文
eregi('[0-9]', $str) //数字
eregi('[a-za-z]', $str)//英文
*/
if (eregi('[^\x00-\x7f]', $str) || eregi('[0-9]', $str) || eregi('[a-za-z]', $str)){
echo '你输入的为中英文数字的并合体哦!'.'<br>';
echo "长度:".strlen($str);
}
/ **

下面这两个方法是用来判断是否是英文汉字和数字组成的字符串,
或者全部是中文组成的字符串 用的变量$str还是本文开头的变量

*/

if (preg_match_all("/^([\x81-\xfe][\x40-\xfe])+$/", $str, $match)) {
echo '全部是汉字';
} else {
echo '不全是汉字';
}

if (preg_match("/([\x81-\xfe][\x40-\xfe])/", $str, $match)) {
echo '含有汉字';
} else {
echo '不含有汉字';
}

/**

此为js方法,判断了一个汉字占两个字节,一个中文或数字占一个,使用编码为utf-8

*/

<script>

var leng = {};

var value = document.forms[0].name.value;
jmz.getlength = function(str) {
var reallength = 0, len = str.length, charcode = -1;
for (var i = 0; i < len; i++) {
charcode = str.charcodeat(i);
if (charcode >= 0 && charcode <= 128) reallength += 1;
else reallength +=2;
}
return reallength;
};

alert(leng.getlength(value))

</script>

function checkstr($str){
$output='';
$a=ereg('['.chr(0xa1).'-'.chr(0xff).']', $str);
$b=ereg('[0-9]', $str);
$c=ereg('[a-za-z]', $str);
if($a && $b && $c){ $output='汉字数字英文的混合字符串';}
elseif($a && $b && !$c){ $output='汉字数字的混合字符串';}
elseif($a && !$b && $c){ $output='汉字英文的混合字符串';}
elseif(!$a && $b && $c){ $output='数字英文的混合字符串';}
elseif($a && !$b && !$c){ $output='纯汉字';}
elseif(!$a && $b && !$c){ $output='纯数字';}
elseif(!$a && !$b && $c){ $output='纯英文';}
return $output;
}

echo checkstr('5爱u');