countLowercase.js (8kyu 89)
Codewars 알고리즘 풀이
Problem
- Your task is simply to count the total number of lowercase letters in a string.
- 문자열의 소문자 수를 계산한다.
Solution 01
function countLowercase(str) {
return str.replace(/[^a-z]/g, '').length;
}
countLowercase(''); // 0
countLowercase('abcdEFGH'); // 4
countLowercase('@#!?abcd'); // 4
정규표현식 (RegExp)
replace()
: 대응되는 문자열을 찾아 다른 문자열로 치환한다.
[^ ]
: 부정 (= not)
g
: 전역 검색
Solution 02
function countLowercase(str) {
return (str.match(/[a-z]/g) || []).length;
}
countLowercase(''); // 0
countLowercase('abcdEFGH'); // 4
countLowercase('@#!?abcd'); // 4
정규표현식 (RegExp)
match()
: 문자열에서 정규식과 일치하는 문자를 검색하고, 배열로 반환한다.
Solution 03
function countLowercase(str) {
return str.match(/[a-z]/g) ? str.match(/[a-z]/g).length : 0;
}
countLowercase(''); // 0
countLowercase('abcdEFGH'); // 4
countLowercase('@#!?abcd'); // 4