关于可能重复的问题的说明
该问题的公认答案不起作用。
错误地将空格和其他非字母字符报告为toUpperCase == true。 : - (
但我现在看到其他答案之一确实提供了一个成功的解决方案。上一个问题的正确答案来自ciembor。我会留下这个问题,因为Barmar接受的答案正确地解决了这个问题。
如何确定文字字符串中的哪些字符是大写字母?
我的第一次尝试是使用.toUpperCase
进行测试,但非字母字符也会返回true:
var text="Romeo & Juliet";
var characters=text.split('');
// and test with
characters[i]===characters[i].toUpperCase() // but spaces and "&" also test as true
接下来我使用正则表达式并使用A-Z
进行测试,但非英语字符集可能包含大于此范围的大写字母。
任何人都有办法确定角色是否是大写字母?
答案 0 :(得分:4)
试试这个:
function isUpperCase(c) {
return c == c.toUpperCase() && c != c.toLowerCase();
}