728x90
반응형
수량자
어떠한 패턴이 얼만큼 등장하는가를 나타내는 것
* (Star)
*
앞에 문자가 0개 이상인 문자열을 찾는다는 의미이다.
+ (Plus)
+
앞에 문자가 1개 이상인 문자열을 찾는다는 의미이다.
? (Question Mark)
?
앞에 문자가 없거나 1개인 문자열을 찾는다는 의미이다.
수량자 예제 1
1. *
이용
2. +
이용
3. ?
이용
{ } (Curly Brackets)
찾을 패턴에 대한 정확한 수량을 지정할 때 사용한다.
수량자 예제 2
1. { }
이용하여 특정 갯수 범위 지정
2. { }
이용하여 최소 범위만 지정
*? (Star + Question Mark)
*
와 ?
가 이어져 사용될 경우 0개를 의미한다.
+? (Plus + Question Mark)
+
와 ?
가 이어져 사용될 경우 1개를 의미한다.
?? (Question Mark + Question Mark)
?
가 2개가 이어져 사용될 경우 0개를 의미한다.
수랑자 예제 3
1. *?
이용
2. +?
이용
3. ??
이용
탐욕적인 수량자 (Greedy Quantifier)
패턴을 찾을 때 뒤에서 부터 검색하여 최대한 많은 패턴을 적용한다.
게으른 수량자 (Lazy Quantifier)
패턴을 찾을 때 앞에서 부터 검색하여 최대한 적은 패턴을 적용한다.
탐욕적인 수량자와 게으른 수량자 예제
1. 탐욕적인 수량자
2. 게으른 수량자
결과를 보자면 탐욕적인 수량자는 최대한 많은 패턴을 적용하려고 하기 때문에 전체가 다 선택이 되었고, 게으른 수량자는 최대한 적은 패턴을 적용하려고 하기 때문에 중간에 나타난 </div>
를 끝으로 2개의 매치 결과가 나타난다.
728x90
반응형
'Dev > 정규표현식' 카테고리의 다른 글
[정규표현식] 위치지정과 탐색 (0) | 2020.11.20 |
---|---|
[정규표현식] 문자 클래스와 경계 (0) | 2020.11.20 |
[정규표현식] 서브 패턴 (0) | 2020.11.19 |
[정규표현식] 특정 문자 (0) | 2020.11.19 |
[정규표현식] 모든 문자 (0) | 2020.11.19 |
댓글