본문
특정 문자 포함 체크 로직(JAVA)
# 특정 문자 포함 체크 - 알파벳 포함 체크 로직
Source)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | package com.source.common; public class DateFormat { public static void main(String[] args) { String dataStr01 = "2015-11-30 00:00:00"; String dataStr02 = "Wed Nov 16 00:00:00 KST 2016"; if (dataStr01.matches(".*[a-z|A-Z]+.*")) { System.out.println("알파벳 포함 O"); } else { System.out.println("알파벳 포함 X"); } if (dataStr02.matches(".*[a-z|A-Z]+.*")) { System.out.println("알파벳 포함 O"); } else { System.out.println("알파벳 포함 X"); } } } | cs |
Result)
1 2 | 알파벳 포함 X 알파벳 포함 O | cs |
표현식 | 설명 |
. | 마침표(.)는 임의의 한 문자를 의미합니다. 어떤 문자든 상관없습니다. (단, \는 제외) 반드시 하나의 글자가 있어야 합니다. Ex.) ab. -> abc, abd, ab5 (O) ab. -> abcd, ab (X) |
* | 별표(애스터리스크, Asterisk)는 임의의 문자열을 의미합니다. 공백(문자열이 없는 경우)도 포함합니다. Ex.) a*b -> ab, acccccb, aob (O)
단 JAVA에서는 *abc 와 같이 * 앞에 어떤 문자(열)도 없는 경우는 사용이 불가능합니다. 반드시 앞에 최소한의 한 문자가 위치해야 합니다. 그래서 위의 정규식은 * 앞에 .를 배치시킨 .* 형태로 사용하였습니다. |
[] | [] 괄호 내의 문자열 집합을 의미합니다. 문자열 집합을 범위로 표현할 때는 - (하이픈)을 사용합니다. [ㄱ-ㅎ] 는 기역(ㄱ) 부터 히읗(ㅎ)까지의 한글 자음을 의미합니다. [ㅏ-ㅣ] 는 ㅏ,ㅑ,ㅓ,ㅕ ... ㅡ,ㅣ까지의 한글 모음을 의미합니다. [가-힣] 는 한글 가 부터 힣 까지 자음과 모음을 조합하여 만들어낼 수 있는 모든 한글을 의미합니다.
위의 조건은 다음과 같이 하나의 괄호 내에 포함시킬 수 있습니다. [ㄱ-ㅎㅏ-ㅣ가-힣] 한글 모음, 자음 뿐만 아니라, 조합하여 만들어낼 수 있는 모든 한글 패턴을 의미합니다. |
+ | 바로 앞의 문자가 하나 이상 반복됨을 의미합니다. 바로 앞의 문자가 [ㄱ-ㅎㅏ-ㅣ가-힣] 이므로, 한글이 하나 이상 반복됨을 의미합니다. |
- 참고 및 출처 : http://ooz.co.kr/254
댓글