자유로이

쉽게 알아가는 정규표현식 사용법 기초편2(알파벳 패턴) 본문

IT/프로그래밍

쉽게 알아가는 정규표현식 사용법 기초편2(알파벳 패턴)

wooyaa 2020. 8. 21. 14:20

저번에 기초편에서는 전화번호를 예제로 숫자에 대해 다뤄보았는데요.

https://woo-yaa.tistory.com/39

 

쉽게 알아가는 정규표현식 사용법 기초편(전화번호 패턴)

오늘은 특정한 규칙 안에서만 입력된 데이터를 가공하거나 치환하기 위해 문자열 함수나 비교문을 쓸수도 있지만 특정 케이스만 커버되기때문에 조금만 규칙이 벗어나면 그에 해당하는 케이스

woo-yaa.tistory.com

 

이번에는 문자를 다루는 예제를 해보겠습니다.

알파벳 중에 특정 문자만 고르고 싶을 경우
[문자] 이렇게 쓰면됩니다. 
정규표현식에서 대괄호[ ] 안에 글자를 넣으면 해당 글자를 모두 선택할 수 있습니다.
ex) [abc] 이런경우 a와 b와 c를 찾게되는거죠
단 대괄호 안에 담긴 알파벳중 한글자 씩 일치하는것을 찾게됩니다.



그러면 모든 소문자를 구하는 법은 [abcdefghijklmnopqrlstuvwxyz] 이런식으로 써야할까요?
혹시 누락되는 문자가 있으면 인식을 못하게되겠죠..
간단히 쓰는 방법이 있습니다.
바로 [a-z] 입니다.

a부터 z까지 글자를 모두 선택하라는 의미입니다.



그러면 한글자가 아니라 한단어씩 찾을 수는 없을까요?
모든 소문자를 구하는 [a-z]에 반복을 뜻하는 +를 붙여
[a-z]+ 이렇게 쓰면 한단어씩 찾을 수 있게 됩니다.



첨부된 결과를 보시다시피 대문자는 찾지않고 있죠..
대문자까지 찾으려면 어떡해야 할까요?
조그만 응용하시면 답이 나오실겁니다.
[]대괄호 안에 있는 글자를 모두 인식한다고 했죠?
그리고 a-z는 모든 소문자를 인식하고요
그럼 대문자를 포함시키려면
[a-zA-Z]+ 이렇게 쓰이면 됩니다.



결과이미지를 보면 .(마침표)로 끝나는 한문장씩은 인식할수 없을까요?
,  '  모든숫자 
이 세가지가 포함되면 한문장씩 인식할수 있지않을까요?

 [a-zA-Z ,'0-9]+

이렇게 알파벳을 인식하는 표현식을 공부해봤습니다. 

도움이 되셨나요? :)

Comments