js如何判断字符是中文,英文,数字还是字符
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js如何判断字符是中文,英文,数字还是字符相关的知识,希望对你有一定的参考价值。
需要准备的材料分别有:电脑、html编辑器、浏览器。
1、首先,打开html编辑器,新建html文件,例如:index.html。
2、在index.html中的<script>标签,输入js代码:
document.body.innerText = test('测');
function test(t)
var a = [
'reg':/[^/u4e00-/u9fa5]/, 'name':'中文',
'reg':/[^0-9]/, 'name':'数字',
'reg':/[^A-Za-z]/, 'name':'英文',
];
for (var i = 0; i < a.length; i++)
if (a[i].reg.test(t))
return a[i].name;
return '字符';
3、浏览器运行index.html页面,此时会打印出js判断的结果。
参考技术A1、使用正则表达式判断
中文正则 :[\\u4E00-\\u9FA5]
英文正则:[A-Za-z]
数字正则: [0-9]
var pattern = new RegExp("[\\u4E00-\\u9FA5]+");
var str = "中文字符"
if(pattern.test(str))
alert('该字符串是中文');
//验证是否是英文
var pattern2 = new RegExp("[A-Za-z]+");
var str2 = "abcdefsgaaweg"
if(pattern2.test(str2))
alert('该字符串是英文');
//验证是否是数字
var pattern3 = new RegExp("[0-9]+");
var str3 = "234234"
if(pattern3.test(str3))
alert('该字符串是数字');
参考技术B //判断中文
funtion isChinese(param)
var regExp = /[^/u4e00-/u9fa5]/;
if(regExp.test(param))
return false;
return true;
//判断字母(英文)
function isEng(param)
var regExp = /[^A-Za-z]/;
if(regExp.test(param))
return false;
return true;
//判断数字或字符
function isNum(param)
var regExp = /[^0-9]/;
if(regExp.test(param))
return false;
return true;
参考技术C 正则表达式就可以了 参考技术D
JS中的变量是松散类型(即弱类型)的,可以用来保存任何类型的数据。
typeof 可以用来检测给定变量的数据类型,可能的返回值:1. 'undefined' --- 这个值未定义;
2. 'boolean' --- 这个值是布尔值;
3. 'string' --- 这个值是字符串;
4. 'number' --- 这个值是数值;
5. 'object' --- 这个值是对象或null;
6. 'function' --- 这个值是函数。
var aa = 'test string';alert(typeof aa); // 'string'
alert(typeof 90); // 'number'
但是要判断是中文,英文,数字还是字符,那你就只能用正则了。
js判断是不是有中文字符的方法大全
");return false;return true;第二种方法(包含中文则返回"true",不包含中文则返回"false"):<script language="javascript">function isChina(s)var patrn=/[\\u4E00-\\u9FA5]|[\\uFE30-\\uFFA0]/gi;if(!patrn.exec(s))return false;elsereturn true;</script>第三种方法
<script language="javascript">var str=\'中国\';if(escape(str).indexOf("%u")<0)alert("没有包含中文");elsealert("包含中文");</script>escape对字符串进行编码时,字符值大于255的以"%u****"格式存储,而字符值大于255的恰好是非英文字符(一般是中文字符,非中文字符也可以当作中文字符考虑);indexOf用以判断在字符串中是否存在某子字符串,找不到返回"-1"。 参考技术A var patt = /[\u4e00-\u9fa5]+/;
以上是关于js如何判断字符是中文,英文,数字还是字符的主要内容,如果未能解决你的问题,请参考以下文章