정규식 어휘표
문 자 | 의미 |
---|---|
. | 임의의 한 개의 문자 |
\ | 이스케이프 문자로 \ 를 사용하면 특수 문자의 의미가 없어진다. 예로 \. 는 임의의 한 개의 문자가 아니라 . 문자와 매칭된다 |
^ | 문자열의 시작을 의미. ^Hos 는 문자열이 Ho 로 시작되는 걸 의미하며 Host, Hospital 에 일치한다. |
$ | 문자열이 끝을 의미한다. X$ 의 의미는 문자열이 반드시 X 자로 끝나야 한다는 의미이다. |
+ | 하나, 또는 그 이상과 일치함을 의미한다. 예로 a+ 는 a, aa, aab 와 모두 일치하나 abc와는 일치하지 않는다. |
* | 0 또는 그 이상과 일치함을 의미한다. |
? | 0 또는 1번 일치함을 의미한다. 예로 그림 파일의 일종인 JPEG 는 확장자가 jpg 또는 jpeg 일 수 있다. jpe?g 라고 적으면 jpg, jpeg 와 모두 일치한다. |
| | 여러 개 중에 하나만 일치하면 된다. abc|bcd 는 “abcd” 또는 “bcde” 와 일치하지만 “abce” 와 일치하지는 않는다. |
() | 일치한 내용을 그룹화 및 캡춰할 수 있다. 이미지 파일의 확장자는 다음과 같이 그룹화할 수 있다. (gif|jpe?g|png). 일치한 내용은 사용할 수 있는데 정규식 구현물에 따라 $ 또는 % 문자에 숫자를 붙이면 참조 가능하다.첫 번째로 일치한 내용은 $1 또는 %1로 참조할 수 있다. |
[] | 문자 클래스라고 하며 “[“과 “]” 사이에 문자중 하나만 일치하면 된다. [abc]d 는 ab, bd, cd 와 모두 일치한다. – 를 쓰면 구간을 지정할 수 있는데 모든 알파벳 문자를 의미할 경우 [a-z] 라고 적으면 된다. |
^ | 복잡하게도 ^ 는 두 가지 의미가 있고 문맥에 따라 해석해야 한다. 여기서 ^ 는 부정의 의미로 [^a-z] 는 알파벳 소문자가 아닌 모든 문자를 의미한다. |
! | 정규식의 맨 처음에 사용할 경우 부정의 의미로 사용된다. |
{m} | 출현 빈도를 의미한다. m 은 숫자이며 {3} 일 경우 3번 출현해야 함을 나타낸다. 구간은 , 로 표시할 수 있다. {3,} 은 3번 이상이며 {3,5} 는 3번 이상 5번 이하를 의미한다.a{3} 은 aaab 와 일치하지만 aaab 와는 일치하지 않는다. |