匹配输入的字符:以字母或_开头,后面由数字字母_组成长度为5-20的字符串
var reg=/^[a-bA-B_][a-bA-B0-9_]{4,19}/
var name1='abb'
console.log(reg.test(name1)
题目描述:js求字符串字节长度方法
描述:汉字字节为2,其他为1
一个英文字母(不分大小写)占一个字节的空间,一个中文汉字占两个字节的空间。英文标点占一个字节,中文标点占两个字节
只有中文的Unicode编码大于255
var str = 'jg78*笑笑';
方法1:
function getByteLength1(str){
var count = 0;
for(var i = 0;i < str.length;i ++){
if(str.charCodeAt(i) > 255){//charCodeAt返回参数Unicode编码
count +=2;//中文为2Byte
}else{
count ++;//其他为1Byte
}
}
return count;//返回参数字节长度值,也可以直接console输出
}
方法2:
// 中文和英文一起,不分开讨论
function getByteLength2(str){
var count = str.length;//首先count等于字符串的长度
for(var i = 0;i < str.length;i ++){
if(str.charCodeAt(i) > 255){//如果Unicode编码大于255为中文
count ++;//在原来基础上没多一个中文就+1
}
}
return count;//返回参数字节长度值,也可以直接console输出
}
var res = getByteLength1(str);
console.log(res);
标签:count,中文,console,字节,字节数,算法,正则,str,var
From: https://www.cnblogs.com/Allerge/p/16837811.html