어제 오늘 내일

[Java Character] isLetterOrDigit() - 문자가 알파벳 또는 숫자인지 확인하기 본문

IT/Java

[Java Character] isLetterOrDigit() - 문자가 알파벳 또는 숫자인지 확인하기

hi.anna 2025. 9. 30. 01:49

문자열을 다룰 때 특정 문자가 알파벳이거나 숫자인지 확인해야 하는 경우가 많습니다. 예를 들어, 아이디 검증 로직에서 특수문자는 허용하지 않고 영문자와 숫자만 허용하는 경우가 대표적입니다. 이때 Character 클래스의 isLetterOrDigit() 메소드를 사용하면 간단하게 처리할 수 있습니다.

 

1. isLetterOrDigit() 메소드 개요

  • 메소드 시그니처
    public static boolean isLetterOrDigit(char ch)
  • 전달된 문자가 알파벳이거나 숫자일 경우 true, 그 외에는 false를 반환합니다.
  • 알파벳 대소문자와 0~9 숫자를 구분하지 않고 모두 허용합니다.

 

2. 기본 사용 예제

public class CharacterIsLetterOrDigitExample {
    public static void main(String[] args) {
        char c1 = 'B';
        char c2 = '7';
        char c3 = '#';

        System.out.println(Character.isLetterOrDigit(c1)); // true
        System.out.println(Character.isLetterOrDigit(c2)); // true
        System.out.println(Character.isLetterOrDigit(c3)); // false
    }
}

'B'는 알파벳이므로 true, '7'은 숫자이므로 true, 그리고 '#'는 특수문자이므로 false가 반환됩니다.

 

3. 문자열 검증 예제

public class CharacterIsLetterOrDigitExample {
    public static void main(String[] args) {
        String input = "User123!";

        for (int i = 0; i < input.length(); i++) {
            char ch = input.charAt(i);
            if (Character.isLetterOrDigit(ch)) {
                System.out.println(ch + " 는 알파벳 또는 숫자입니다.");
            } else {
                System.out.println(ch + " 는 허용되지 않는 문자입니다.");
            }
        }
    }
}

 

출력 결과:

U 는 알파벳 또는 숫자입니다.
s 는 알파벳 또는 숫자입니다.
e 는 알파벳 또는 숫자입니다.
r 는 알파벳 또는 숫자입니다.
1 는 알파벳 또는 숫자입니다.
2 는 알파벳 또는 숫자입니다.
3 는 알파벳 또는 숫자입니다.
! 는 허용되지 않는 문자입니다.

마지막의 '!' 특수문자만 걸러지는 것을 확인할 수 있습니다.

 

4. 활용 사례

  • 아이디, 비밀번호 입력 검증 (알파벳 + 숫자만 허용)
  • 문자열에서 특수문자 필터링
  • 파일명이나 코드에서 허용된 문자만 사용하도록 제한할 때

 

정리

Character.isLetterOrDigit() 메소드는 문자가 알파벳 또는 숫자인지 확인할 수 있는 간단하고 효과적인 방법입니다. 입력값 검증, 보안 로직, 데이터 전처리 등 다양한 상황에서 활용할 수 있으므로 꼭 익혀두면 좋습니다.

 

 

 

반응형
Comments