첫 번째 문자열이 대문자인지 소문자인지 체크하는 방법
이번 포스팅은 JavaScript에서 첫 번째 문자열이 대문자인지 소문자인지 체크하는 몇 가지 방법을 소개합니다.
방법 1. toUpperCase 메서드 또는 toLowerCase 메서드
첫 번째 방법으로 toUpperCase() 메서드 또는 toLowerCase() 메서드를 사용할 수 있습니다.
toUppderCase() 메서드는 문자열을 대문자로 변환하고 toLowerCase() 메서드는 문자열을 소문자로 변환합니다.
[대소문자 체크 방법]
순서 1. 첫 번째 문자열을 가져옵니다.
순서 2. toUpperCase() 메서드 또는 toLowerCase() 메서드를 호출하여 대문자 또는 소문자로 변환합니다.
순서 3. 첫 번째 문자열을 대소문자로 변환된 문자열과 비교하여 대문자인지 소문자인지 체크합니다.
다음 예제는 toUpperCase() 메서드와 toLowerCase() 메서드를 사용하여 첫 번째 문자열이 대문자 또는 소문자인지 체크합니다.
function isUpper(strValue) {
let firstStrValue = strValue.charAt(0);
if(firstStrValue === firstStrValue.toUpperCase()) {
return true;
}
return false;
}
function isLower(strValue) {
let firstStrValue = strValue.charAt(0);
if(firstStrValue === firstStrValue.toLowerCase()) {
return true;
}
return false;
}
console.log('\'Java\'의 첫 번째 문자열은 대문자인가? ' + isUpper('Java'));
console.log('\'Java\'의 첫 번째 문자열은 소문자인가? ' + isLower('Java'));
console.log('\'java\'의 첫 번째 문자열은 대문자인가? ' + isUpper('java'));
console.log('\'java\'의 첫 번째 문자열은 소문자인가? ' + isLower('java'));
[실행 결과]
'Java'의 첫 번째 문자열은 대문자인가? true
'Java'의 첫 번째 문자열은 소문자인가? false
'java'의 첫 번째 문자열은 대문자인가? false
'java'의 첫 번째 문자열은 소문자인가? true
참고로 빈 문자열의 첫 번째 문자열을 대괄호 표기법으로 가져오는 경우 undefined를 반환하며, charAt() 메서드로 가져오는 경우 빈 문자열("")을 반환합니다.
따라서, 대괄호 표기법보다 charAt() 메서드를 사용하여 첫 번째 문자열을 가져오는 방법이 안전합니다.
console.log(''.charAt(0)); // ''
console.log(''[0]); // undefined
방법 2. match() 메서드와 정규 표현식
두 번째 방법으로 문자열의 match() 메서드에 정규 표현식을 전달하여 첫 번째 문자열이 대문자인지 소문자인지 체크할 수 있습니다.
match() 메서드는 정규 표현식과 일치하는 문자열이 존재하면 배열을 반환하지만, 일치하는 문자열이 없으면 null을 반환합니다.
따라서, match() 메서드의 반환 결과가 null인지 체크하여 첫 번째 문자열이 대문자인지 소문자인지 확인할 수 있습니다.
다음 예제는 정규 표현식을 사용하여 첫 번째 문자열이 대문자 또는 소문자인지 체크합니다.
function isUpper(strValue) {
let firstStrValue = strValue.charAt(0);
return firstStrValue.match(new RegExp(/^[A-Z]/)) !== null;
}
function isLower(strValue) {
let firstStrValue = strValue.charAt(0);
return firstStrValue.match(new RegExp(/^[a-z]/)) !== null;
}
console.log('\'Java\'의 첫 번째 문자열은 대문자인가? ' + isUpper('Java'));
console.log('\'Java\'의 첫 번째 문자열은 소문자인가? ' + isLower('Java'));
console.log('\'java\'의 첫 번째 문자열은 대문자인가? ' + isUpper('java'));
console.log('\'java\'의 첫 번째 문자열은 소문자인가? ' + isLower('java'));
[실행 결과]
'Java'의 첫 번째 문자열은 대문자인가? true
'Java'의 첫 번째 문자열은 소문자인가? false
'java'의 첫 번째 문자열은 대문자인가? false
'java'의 첫 번째 문자열은 소문자인가? true
방법 3. 아스키코드
마지막 방법으로 문자열을 UTF-16 방식으로 인코딩하여 아스키코드 범위에 속하는지 체크합니다.
영어 대문자의 아스키코드 범위는 A(65)부터 Z(90)까지이며, 소문자의 아스키코드 범위는 a(97)부터 z(122)까지입니다.
다음 예제는 아스키코드를 사용하여 첫 번째 문자열이 대문자 또는 소문자인지 체크합니다.
function isUpper(strValue) {
let firstStrValue = strValue.charCodeAt(0);
return firstStrValue >= 65 && firstStrValue <= 90;
}
function isLower(strValue) {
let firstStrValue = strValue.charCodeAt(0);
return firstStrValue >= 97 && firstStrValue <= 122;
}
console.log('\'Java\'의 첫 번째 문자열은 대문자인가? ' + isUpper('Java'));
console.log('\'Java\'의 첫 번째 문자열은 소문자인가? ' + isLower('Java'));
console.log('\'java\'의 첫 번째 문자열은 대문자인가? ' + isUpper('java'));
console.log('\'java\'의 첫 번째 문자열은 소문자인가? ' + isLower('java'));
[실행 결과]
'Java'의 첫 번째 문자열은 대문자인가? true
'Java'의 첫 번째 문자열은 소문자인가? false
'java'의 첫 번째 문자열은 대문자인가? false
'java'의 첫 번째 문자열은 소문자인가? true
'JavaScript > 문자열' 카테고리의 다른 글
[JavaScript]문자열이 null인지 빈 값인지 체크하는 방법 (0) | 2022.10.01 |
---|---|
[JavaScript]문자열을 배열로 변환하는 방법 (0) | 2022.10.01 |
[JavaScript]문자열을 분리하는 방법 (0) | 2022.10.01 |
[JavaScript]문자열인지 확인하는 방법 (0) | 2022.09.23 |
[JavaScript]문자열 비교하는 방법 (0) | 2022.09.23 |
댓글