문제
함수의 실행 결과로 옳은 것은?
SQLSELECT REGEXP_SUBSTR('aaaaabbbb', 'a{2,4}') FROM DUAL;
① aaa ② aaaa ③ ab ④ aab
정답
2번
해설
정답: 2. 정규식 a{2,4}는 a가 2회 이상 4회 이하 반복되는 패턴을 의미하며, 기본적으로 가능한 가장 긴 매칭인 aaaa를 반환한다.
오답 풀이
- 1번: aaa도 패턴 범위에는 맞지만 기본 매칭 결과는 더 긴 aaaa이다.
- 2번: a가 4개 반복된 문자열이 반환되므로 옳다.
- 3번: b는 정규식 패턴에 포함되지 않는다.
- 4번: b는 정규식 패턴에 포함되지 않는다.
보충 개념 REGEXP_SUBSTR은 문자열에서 정규식과 일치하는 부분 문자열을 반환한다. {m,n}은 앞의 문자가 m회 이상 n회 이하 반복됨을 의미한다.