JavaScript - проверка любых строчных букв в строке - PullRequest
29 голосов
/ 14 мая 2010

Рассмотрим метод JavaScript, который должен проверить, является ли данная строка прописными буквами. Входные строки - это имена людей.

Текущий алгоритм - проверять наличие строчных букв.

var check1 = "Jack Spratt";    
var check2 = "BARBARA FOO-BAR"; 
var check3 = "JASON D'WIDGET";  

var isUpper1 = HasLowercaseCharacters(check1);  
var isUpper2 = HasLowercaseCharacters(check2);
var isUpper3 = HasLowercaseCharacters(check3);

function HasLowercaseCharacters(string input)
{
    //pattern for finding whether any lowercase alpha characters exist
    var allLowercase; 

    return allLowercase.test(input);
}

Является ли регулярное выражение лучшим способом для этого?

Какой шаблон вы бы использовали для определения наличия в строке буквенных символов в нижнем регистре?

Ответы [ 4 ]

86 голосов
/ 14 мая 2010
function hasLowerCase(str) {
    return str.toUpperCase() != str;
}

alert(hasLowerCase("HeLLO"));
alert(hasLowerCase("HELLO"));

Попробуйте: http://jsfiddle.net/B2bvY/3/

31 голосов
/ 14 мая 2010

также:

function hasLowerCase(str) {
    return (/[a-z]/.test(str));
}
5 голосов
/ 14 мая 2010
function hasLowerCase(str) {
    return str.toUpperCase() != str;
}

или

function hasLowerCase(str) {
    for(x=0;x<str.length;x++)
        if(str.charAt(x) >= 'a' && str.charAt(x) <= 'z')
            return true;
    return false;
}
0 голосов
/ 12 июня 2017

Еще одно решение - сопоставить регулярное выражение с a-z

function nameHere(str) {
    return str.match(/[a-z]/);
}

или

 function nameHere(str) {
        return /[a-z]/g.test(str);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...