[SQLD] 3-14. 정규 표현식 - 키워드 요약 | 정리 | SQLD 공부 | 개발자 자격증 | SQL 기본 및 활용 :: 매운코딩
728x90
300x250

[과목2.SQL 기본 및 활용 - 3-14. 정규 표현식]

 

1.     정규 표현식?

(1)   문자열의 규칙을 표현하는 검색 패턴

(2)   주로 문자열 검색과 치환에 사용

 

2.     POSIX 연산자

-      기본연산자

(1)   ‘ . ‘ (dot) : 모든 문자와 일치

(2)   ‘ | ‘ (or) : 대체 문자를 구분
먼저 들어온 문자를 리턴(ex. REGEXP_SUBSTR(‘aa’, ‘a|aa’) => ‘a’리턴)

-      검색 패턴의 시작과 끝 지정

(3)   ‘ \ ‘ (backslash) : 백슬래시 다음 문자를 일반 문자로 취급

(4)   ‘ ^ ’ (carrot) : 문자열의 시작

(5)   ‘ $ ‘ (dollar) : 문자열의 끝

-      수량사 - 선행 표현식의 일치 횟수를 지정

-      Greedy 방식 : 패턴을 최대로 일치 시킴

(6)   ‘ ? ‘ : 0회 또는 1회 일치

(7)   ‘ * ‘ : 0회 또는 그 이상의 횟수로 일치

(8)   ‘ + ‘ : 1회 또는 그 이상의 횟수로 일치

(9)   {m} : m회 일치

(10)  {m,} : 최소 m회 일치

(11)  {, m} : 최대 m회 일치

(12)  {m,n} : 최소 m회 일치, 최대 n회 일치

(13)  ( ) 괄호 : 괄호 안의 표현식을 하나의 단위로 취급

(14)  \n 역참조 : N번째 서브 표현식과 일치, n1~9사이 정수
- (ab|cd)x\1
일경우 ‘abxab’, ‘cdxcd’가능..
- (.*)\1+
일 경우 동일한 문자열이 1회이상 반복되는 패턴은 모두 해당됨

-      문자리스트

(15)  [char…] : 문자 리스트 중 한문자와 일치

(16)  [^char…] : 문자 리스트에 포함되지 않은 한 문자와 일치

(17)  […-…] (하이픈) : 문자 혹은 숫자의 범위를 의미
- [0-9] : 0~9
까지의 숫자 의미
- [a-z] , [A-Z] , [a-zA-z]

(18)  [:digit:] : 숫자만 찾음

(19)  [:lower:] : 소문자만 찾음

(20)  [:upper:] : 대문자만 찾음

(21)  [:alpha:] : 영문자(대소문자) 찾음

(22)  [:alnum:] : 영문자와 숫자

(23)  [:xdigit:] : 16진수, [0-9a-fA-F]

(24)  [:punct:] : 구두점 기호

(25)  [:blank:] : 공백 문자

(26)  [:space:] : 공간 문자 (스페이스, 엔터, )

 

3.     PERL 연산자

(1)   \d : 숫자

(2)   \D : 숫자가 아닌 모든 문자 ( [^[:digit:]] 과 동일 )

(3)   \w : 숫자와 영문자

(4)   \W : 숫자와 영문자가 아닌 모든 문자 (언더바 제외) ( [^[:alnum:]_] )

(5)   \s : 공백 문자

(6)   \S : 공백 문자가 아닌 모든 문자

-      수량사와 유사함, 비탐욕적으로 동작

-      nongreedy방식 : 패턴을 최소로 일치시킴

(7)   ‘ ?? ‘ : 0회 또는 1회 일치

(8)   ‘ *? ‘ : 0회 또는 그 이상의 횟수로 일치

(9)   ‘ +? ‘ : 1회 또는 그 이상의 횟수로 일치

(10)  {m}? : m회 일치

(11)  {m,}? : 최소 m회 일치

(12)  {, m}? : 최대 m회 일치

(13)  {m,n}? : 최소 m회 일치, 최대 n회 일치

 

4.     REGEXP_LIKE 함수

: REGEXP_LIKE ( 검색문자열 지정, 검색 패턴 지정, 일치 옵션 지정)

일치하면 TRUE, 일치하지 않으면 FALSE 리턴.

 

5.     REGEXP_REPLACE 함수

: REGEXP_REPLACT( 검색 문자열 지정, 검색 패턴, 변경 문자열 지정, 변경위치, 패턴일치 횟수 지정)

변경한 값을 반환

6.     REGEXP_SUBSTR 함수

: REGEXP_SUBSTR (검색 문자열, 검색 패턴, 검색 시작 위치, 패턴 일치 횟수, 서브 표현식 지정)

일치한 패턴을 반환

7.     REGEXP_INSTR 함수

: REGEXP_INSTR (검색 문자열, 검색 패턴, 검색 시작 위치, 패턴 일치 횟수, 반환 옵션 지정, 일치 옵션 지정, 서브 표현식 지정)

검색 문자열에서 일치한 패턴의 시작 위치를 정수로 반환

8.     REGEXP_COUNT 함수

: REGEXP_COUNT(검색 문자열, 검색 패턴, 시작위치, 일치옵션)

검색 문자열에서 일치한 패턴의 횟수를 반환

728x90

+ Recent posts