Appia의 IT세상

정규 표현식[Regular expression,Regexp] 004 - 특정 문자의 수량을 나타내는 수량자 본문

Development/ETC

정규 표현식[Regular expression,Regexp] 004 - 특정 문자의 수량을 나타내는 수량자

Appia 2021. 1. 5. 06:32
반응형

정규 표현식[Regular expression,Regexp] 004 - 특정 문자의 수량을 나타내는 수량자

정규 표현식[Regular expression,Regexp] 004 - 특정 문자의 수량을 나타내는 수량자

앞서 포스팅에서는 특정 문자의 범위를 선택하거나, 특정 문자의 범위를 주고, 그 중에 포함되는 문자들을 선별하는 방법들에 대해서 살펴봤습니다. 이번 포스팅에서는 이와 같은 함꼐 부분과 많이 사용되는 정규표현식의 수량자에 대해서 살펴볼까 합니다. 

제 짧은 생각으로 정규 표현식[Regular expression,Regexp]을 사용하면서 가장 효율적으로 사용되는 부분이 있다면, 바로 수량자가 아닐까라는 생각을 합니다. 수량자는 말 그래도, 수량을 표현하기 위해서 나타내는 특수한 문자입니다. 그럼 각 수량자들에 대해서 살펴보겠습니다. 

정규 표현식[Regular expression,Regexp] 003 - 특정 범위 문자 선택2

 

정규 표현식[Regular expression,Regexp] 003 - 특정 범위 문자 선택2

정규 표현식[Regular expression,Regexp] 003 - 특정 범위 문자 선택2 앞선 포스팅에서는 Any Character(.)문자를 선택하여 모든 문자를 선택하거나, 아니면, 특정 범위내에서 문자를 선택하는 방법에 대

appia.tistory.com

 

흔히 정규 표현식[Regular expression,Regexp]에서 수량자을 이야기 하면 다음과 같이 3개의 문자에 대해서 가장 많은 이야기를 합니다. 

*

+

?

이 부분들에 대해서 먼저 살펴보겠습니다. 

 

먼저 * 표시에 대해서 살펴보도록 하겠습니다. 

A*B

이와 같이 되어 있다면, *앞의 문자가 0개에서 여러개 나올수 있습니다. 그럼 다음 예시를 통하여 좀 더 상세하게 살펴보도록 하겠습니다. 

 

설정 텍스트

AABC AAABC ABC BC BD

정규 표현식

A*B

매칭 텍스트

AABC AAABC ABC BC BD

위와 같이 A*B일 경우 *다음 문자를 기준으로 삼고, 그 앞에 문자가 0개에서부터 여러개일 때 사용이 가능합니다. 

A*B 예시

 

이번에는 + 표시에 대해서 살펴보도록 하겠습니다. 

A+B

이와 같이 되어 있다면, +앞의 문자가 1개에서 여러개 나올수 있습니다. 그럼 다음 예시를 통하여 좀 더 상세하게 살펴보도록 하겠습니다. 

설정 텍스트

AABC AAABC ABC BC BD

정규 표현식

A+B

매칭 텍스트

AABAAABABBC BD

위와 같이 A+B일 경우 +다음 문자를 기준으로 삼고, 그 앞에 문자가 1개에서부터 여러개일 때 사용이 가능합니다. 

A+B 예시

 

마지막 ? 표시에 대해서 살펴보도록 하겠습니다. 

A?B

이와 같이 되어 있다면, ?앞의 문자가 0개 또는 1개가 나올수 있습니다. 그럼 다음 예시를 통하여 좀 더 상세하게 살펴보도록 하겠습니다. 

설정 텍스트

AABC AAABC ABC BC BD

정규 표현식

A?B

매칭 텍스트

AABC AAABABC BC BD

위와 같이 A?B일 경우 ?다음 문자를 기준으로 삼고, 그 앞에 문자가 0개 또는 1개일 때 사용이 가능합니다. 

A?B의 예시

그럼 이번에는 {}이용하여 수량을 포함하는 방법에 대해서 이야기를 해보겠습니다. 이와 같은 방법을 이용할 때, 가장 크게 3가지 방법으로 살펴볼수 있습니다. 

조건

예시

의미

{N}

.{4}

4글자 이상인 모든 문자 

{N,M}

[A-z]{4,6}

4이상이고, 6글자 이하인 모든 알파벳

{N,}

[A-z]{6,}

6글자 이상인 모든 알파벳

그럼 먼저 각 조건에 대해서 살펴보겠습니다. 

 

설정 텍스트

Hi, Hello Appias Appia Regexs to my blog!!

정규 표현식

.{4}

매칭 텍스트

Hi, Hello Appias Appia Regexs to my blog!!

이 부분은 .이 Any Character이기 때문에 4자리로 모든 단어들과 공백을 분리합니다. '!!'은 다른 두 글자가 필요로 하여 묶이지 않은 문자입니다. 

.{4} 예시

설정 텍스트

Hi, Hello Appias Appia Regexs to my blog!!

정규 표현식

[A-z]{4,6}

매칭 텍스트

Hi, Hello Appias Appia Regexs to my blog!!

이 부분은 앞서서 설명한 부분과 동일하게, 4이상인 알파벳 묶음중에 6이하인 부분들만 선별하여 선택합니다. 

[A-z]{4,6} 예시

설정 텍스트

Hi, Hello Appias Appia Regexs to my blog!!

정규 표현식

[A-z]{6,}

매칭 텍스트

Hi, Hello Appias Appia Regexs to my blog!!

이부분은 알파벳중 6글자 이상인 알파벳 묶음들만 선별하여 표시합니다. 

[A-z]{6,} 예시

이와 같은 {}의 사용법을 통해서도 다양한 형태로 수량들을 표시할 수 가 있습니다. 

 

이번 포스팅에서는 정규 표현식[Regular expression,Regexp] 004 - 특정 문자의 수량을 나타내는 수량자라는 주제로 기호(*,+,?)를 통한 수량 표현하는 방법과, {}을 통한 수량을 표현하는 방법에 대해서 살펴봤습니다. 혹 궁금하신 점이나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 감사합니다. 

반응형
Comments