js中如何验证一个字符是否为大写字母,不用正则表达式

2024-11-02 08:18:56
推荐回答(3个)
回答(1):

function allCaps(text){
for(var i=0;i var c=text.charAt(i);
if(c<'A' || c>'Z')
return false;
}
return true;
}
var t='ABCD';
document.write(t+' => '+(allCaps(t)?'全是大写':'不全是')+'
');
t='AbCD';
document.write(t+' => '+(allCaps(t)?'全是大写':'不全是'));
======
输出
ABCD => 全是大写
AbCD => 不全是

另外,js从设计上就安排以正则表达式去验证字符,如果反其道而行。绝对是“舍近求远”、“所谓弃苏合之香,而取螗螂之丸也”
正则版轻松很多
if(/^[A-Z]+$/.test( 'ABCD' ) ){
document.write('全是大写');
}else{
document.write('不全是');
}

回答(2):

Acode="AZ".charCodeAt(0);
Zcode="AZ".charCodeAt(1);

wantedcode="B".charCodeAt(0); //此处用你想验证的字符串替换
if(wantedcode>=Acode && wantedcode<=Zcode){
alert("是");
}
else{
alert("否");
}

回答(3):

(?:(?:[^\u4e00-\u9fa5\d\w]+\d+[\w\W]+[^\u4e00-\u9fa5]*)|(?:[^\u4e00-\u9fa5\d\w]+[\w\W]+\d+[^\u4e00-\u9fa5]*)|(?:\d+[^\u4e00-\u9fa5\d\w]+[\w\W]+[^\u4e00-\u9fa5]*)|(?:\d+[\w\W]+[^\u4e00-\u9fa5\d\w]+[^\u4e00-\u9fa5]*)|(?:[\w\W]+\d+[^\u4e00-\u9fa5\d\w]+[^\u4e00-\u9fa5]*)|(?:[\w\W]+[^\u4e00-\u9fa5\d\w]+\d+[^\u4e00-\u9fa5]*))
匹配汉字以外的
C# 和 javascript 的写法相同
希望有帮助 只能判断是否是三种的组合,长度要另外判断了