744P
정규 표현식
정규 표현식은 문자열의 규칙을 표현하는 검색 패턴으로 주로 문자열 검색과 치환에 사용된다.
24.1.1.1 기본 연산자
| 연산자 | 영문 | 설명 |
| . | dot | 모든 문자와 일치 (newline 제외) |
| | | or | 대체 문자를 구분 |
| \ | backslach | 다음 문자를 일반 문자로 처리 |



24.1.1.2 앵커
앵커(anchor)는 검색 패턴의 시작과 끝을 지정한다.
| 연산자 | 영문 | 단일 행 방식 | 다중 행 방식 |
| ^ | carrot | 문자열의 시작 | 행의 시작 |
| $ | dollar | 문자열의 끝 | 행의 끝 |


24.1.1.3 수량사
수량사(quantifier)는 선행 표현식의 일치 횟수를 지정한다. 패턴을 최대로 일치시키는 탐욕적(greedy) 방식으로 동작한다.
| 연산자 | 설명 |
| ? | 0회 또는 1회 일치 |
| * | 0회 또는 그 이상의 횟수로 일치 |
| + | 1회 또는 그 이상의 횟수로 일치 |
| {m} | m회 일치 |
| {m, } | 최소 m회 일치 |
| {, m} | 최대 m회 일치 |
| {m, n} | 최소 m회, 최대 n회 일치 |


24.1.1.4 서브 표현식
서브 표현식(subexpression)은 표현식을 소괄호로 묶은 표현식이다.
| 연산자 | 설명 |
| (expr) | 괄호 안의 표현식을 하나의 단위로 취급 |

24.1.1.5 역참조
역 참조(back reference)를 사용하면 일치한 서브 표현식을 다시 참조할 수 있다. 반복되는 패턴을 검색하거나 서브 표현식의 위치를 변경하는 용도로 사용할 수 있다.
| 연산자 | 설명 |
| \n | n번째 서브 표현식과 일치, n은 1에서 9 사이의 정수 |

24.1.1.6 문자 리스트
문자 리스트(character list)는 문자를 대괄호로 묶은 표현식이다. 문자 리스트 중 1문자만 일치하면 패턴이 일치한 것으로 처리된다. 문자 리스트에서 하이픈(-)은 범위 연산자로 동작한다.
| 연산자 | 설명 |
| [char...] | 문자 리스트 중 1문자와 일치 |
| [^char...] | 문자 리스트에 포함되지 않은 한 문자와 일치 |


24.1.1.7 POSIX 문자 클래스
오라클 정규 표현식은 POSIX 문자 클래스를 지원한다. POSIX 문자 클래스는 문자 리스트에 사용해야 한다.
| 문자 클래스 | 설명 | 동일 |
| [:digit:] | 숫자 | [0-9] |
| [:lower:] | 소문자 | [a-z] |
| [:upper:] | 대문자 | [A-Z] |
| [:alpha:] | 영문자 | [a-zA-Z] |
| [:alnum:] | 영문자와 숫자 | [0-9a-zA-Z] |
| [:xdigit:] | 16진수 | [0-9a-fA-F] |
| [:punct:] | 구두점 기호 | [^[:alnum:][:cntrl:]] |
| [:blank:] | 공백 문자 | |
| [:space:] | 공간 문자(space, enter, tab) |
| [:cntrl:] | 제어 문자(아스키 < 32, 아스키 > 126) | |
| [:print:] | 출력이 가능한 모든 문자 (아스키 32 ~ 126) | |
| [:graph:] | [:print:]에서 space 제외 |


