안녕하세요. 제임스 입니다.
이번 포스팅에서는 정규표현식으로 영문자만 허용하는 방법에 대해 정리 하겠습니다.
■ 정규표현식 영문자만 허용하기 (대소문자 구분없이 모두 허용)
1 | String regExp = "^[a-zA-Z]*$"; | cs |
위 표현식을 정리 하면 아래와 같습니다.
^[a-zA-Z]*$
^ => 문자열 시작
a-z => 소문자 a ~ z 까지 허용
A-Z => 대문자 A ~ Z 까지 허용
* => 앞에 문자가 없거나 무한대로 많이 있을 수 있음
$ => 문자열 종료
즉, 대소 문자 구분없이 영문자 모두를 허용하며 빈값도 허용한다는 표현식 입니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | String regExp = "^[a-zA-Z]*$"; String testStr1 = "James"; String testStr2 = "james"; String testStr3 = "JAMES"; String testStr4 = "j a m e s"; String testStr5 = "J A M E S"; String testStr6 = ""; System.out.println("testStr1 ==> "+testStr1.matches(regExp)); System.out.println("testStr2 ==> "+testStr2.matches(regExp)); System.out.println("testStr3 ==> "+testStr3.matches(regExp)); System.out.println("testStr4 ==> "+testStr4.matches(regExp)); System.out.println("testStr5 ==> "+testStr5.matches(regExp)); System.out.println("testStr6 ==> "+testStr6.matches(regExp)); | cs |
testStr1 은 대소문자 같이 포함한 문자열입니다.
testStr2 는 소문자만 포함한 문자열
testStr3 은 대문자만 포함한 문자열
testStr4 는 소문자만 포함한 문자열이지만 띄어쓰기를 했습니다.
testStr5 는 대문자만 포함한 문자열이지만 역시 띄어쓰기를 했습니다.
testStr6 은 빈값으로 설정 했습니다.
각각의 변수를 String 객체의 matches 함수를 이용하여 결과값을 찍어 봤습니다.
결과는 아래와 같습니다.
testStr1 ==> true
testStr2 ==> true
testStr3 ==> true
testStr4 ==> false
testStr5 ==> false
testStr6 ==> true
4, 5번의 경우 문자열에 띄어쓰기가 포함되어 있어 false 가 리턴 되었습니다.
6번은 아무 값도 없는 상태 이기 때문에 true 가 리턴 되었습니다. 만약 6번이 띄어쓰기만 있었다면 역시 false 가 리턴 됩니다.
■ 정규표현식 영문자 대문자만 or 소문자만 허용하기
1 | String regExpLowerCaseOnly = "^[a-z]*$"; | cs |
위 표현식과 같이 a-z 만 추가 하면 소문자만 인정하는 표현식이 됩니다.
1 | String regExpUpperCaseOnly = "^[A-Z]*$"; | cs |
소문자를 대문자로 변경 하기만 하면 대문자만 인정하는 표현식이 됩니다.
간단하죠? ^^
영문자 관련 정규표현식은 많이 사용하는 것이니 잘 기억해두시고 사용하시면 좋을거예요 ^^
▼ 도움이 되셨다면 로그인이 필요 없는 ▼
▼ 하트 클릭 한번 부탁 드립니다 ▼
감사합니다 :D
'Java' 카테고리의 다른 글
[ 자바 코딩 ] Java Regular Expression 정규표현식 - 이중 파일 확장자 처리 (12) | 2018.06.19 |
---|---|
[ 자바 코딩 ] Regular Expression 정규표현식 - 파일 확장자 (9) | 2018.06.15 |
[ 자바 코딩 ] Regular Expression 정규표현식 - 숫자만 허용하기 (15) | 2018.05.30 |
[ 자바 코딩 ] Regular Expression 정규표현식 기본 (11) | 2018.05.25 |
[ 자바 코딩 ] Java Character - toLowerCase() 함수 (7) | 2018.04.26 |