한글 구분

한글은 "가" ~ "힣" 까지 차례대로 유니코드 정수로 표현합니다.

입력받은문자(ch)가 다음 조건에 만족하면 한글입니다.

if (ch>='가' && ch<='힣')

 

 

정규표현식

^[0-9]*$    : 숫자
^[z-zA-Z]*$ : 영문자
^[가-힣]*$  : 한글
^[a-zA-Z0-9]: 영어/숫자 

 

boolean a = Pattern.matches("[a-z]", "a");
boolean b = Pattern.matches("[A-Z]", "a");
boolean c = Pattern.matches("[0-9]", "0");
boolean d = Pattern.matches("[가-힝]", "락");

 

Package java.util.regex

Classes for matching character sequences against patterns specified by regular expressions.

 

Method matches

public static boolean matches(String regex,
                              CharSequence input) 

A typical invocation sequence is thus

boolean b = Pattern.matches("a*b", "aaaaab")

 

참고

자바식 정규표현 방법 

http://blog.daum.net/question0921/419 

 

 

예) JavaTest.java

 

import java.io.*;

 

public class JavaTest
{
 public static void main(String [] args)
  throws IOException
 {
   BufferedReader br =
    new BufferedReader(
    new InputStreamReader(System.in));
   
   String data;
   char ch;

   System.out.print("입력 : ");
   data = br.readLine();
    
   ch = data.charAt(0);

   if (ch>='0' && ch<='9')
   {
    System.out.printf("[%c] 숫자", ch);
   }
   else if (ch>='a' && ch<='z')
   {
    System.out.printf("[%c] 대문자", ch);
   }
   else if (ch>='A' && ch<='Z')
   {
    System.out.printf("[%c] 소문자", ch);
   }
   else if (ch>='가' && ch<='힣')
   {
    System.out.printf("[%c] 한글", ch);
   }
   else
   {
    System.out.printf("[%c] 기타", ch);
   }
 } // main()
} // JavaTest

 

또 다른 예)

import java.io.*;
import java.util.regex.*;

public class JavaTest
{
 public static void main(String[] args)
  throws IOException
 {
  BufferedReader br =
   new BufferedReader(
   new InputStreamReader(System.in));
  
   String data;

   System.out.print("입력 : ");
   data = br.readLine();

   if (Pattern.matches("[0-9]", data))
    System.out.printf("숫자");
   else if (Pattern.matches("[A-Z]",data))
    System.out.printf("대문자");
   else if (Pattern.matches("[a-z]", data))
    System.out.printf("소문자");
   else if (Pattern.matches("[가-힣]", data))
    System.out.println("한글");
   else
    System.out.printf("기타");
 }
}

 

728x90
320x100
  • 네이버 블로그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기