상세 컨텐츠

본문 제목

Regular Expression - 범위 검색 (1)

Development/Regular Expression

by thisisnew 2022. 11. 29. 00:01

본문

반응형

 

 

5. 범위 검색

 

5-1. 범위 검색의 필요성

 

https://thisisnew-storage.tistory.com/109

 

Regular Expression - 메타 문자

4. 메타 문자 4-1. 메타 문자 메타 문자들은 특별한 의미를 가지고 있어서, 정규 표현식에서 그대로 쓰이지 않습니다. https://thisisnew-storage.tistory.com/107 Regular Expression - 단일 문자 검색 2. 단일 문자

thisisnew-storage.tistory.com

이전 글에서 영숫자를 찾는 메타 문자로 '\w'가 있는 것을 볼 수 있었습니다.

그렇다면 \w를 이용하여 이메일 주소를 추출하려고 한다면 어떻게 할 수 있을까요?

우선, 이메일 주소마다 글자 수가 달라서 \w를 몇 번 써줘야 할지 알 수 없는 문제가 생깁니다.

그래서 이때 필요한 것이 범위 지정입니다.

 

 

5-2. 하나 혹은 그 이상의 문자 검색

 

찾으려는 문자가 반드시 하나 이상일 때는 더하기(+)를 사용할 수 있습니다.

[0-9]는 하나의 숫자만 검색하지만, [0-9]+는 연속된 하나 이상의 숫자와 일치하게 됩니다.

 

더하기 문자를 적용하면 아래와 같이 사용할 수 있는데요.

`\w+@\w+\.\w+`gm

 

이렇게 두 개의 이메일 주소를 찾아내는 것을 볼 수 있습니다.

 

 

5-3. 있을 수도 있거나 없을 수도 있는 문자 검색

 

위의 더하기(+) 문자는 반드시 한 글자라도 있어야 찾을 수 있는데요.

만약 있을 수도 있고 없을 수도 있는 경우에는 어떻게 해야 할까요?

그때 사용하는 것이 별표(*)입니다.

 

가운데에 점(마침표)이 들어가 있을 수도, 없을 수도 있는 경우를 예로 들어보겠습니다.

`@\w+[\w\.]*`gm

\w로 찾을 수 없는 점(마침표)을 [\w\.]로 그룹화하고 별표(*)를 붙이면 위와 같이 찾을 수 있습니다.

 

 

5-4. 없거나 하나인 문자

 

별표와 비슷하지만 글자 수를 한 글자로 제한하는 물음표(?)도 있습니다.

url 검색 같은 경우 유용하게 쓸 수 있는데요.

`https?://[\w\.\-/]+`gm

이렇게 http와 https 두 경우 모두와 일치하게 됩니다.

반응형

관련글 더보기

댓글 영역