OS/공통-명령어

[정보] 정규표현식(Regular Expression) 이해

투칼론 2018. 4. 10. 22:44
반응형
1. 정의

- 사전적인 의미로는 특정한 규칙을 가진 문자열의 집합을 표현하는데 사용하는 형식 언어이다.
- 주로 Programming Language나 Text Editor 등 에서 문자열의 검색과 치환을 위한 용도로 사용한다.


2. 표현 방법

정규식(Regular Expression)은 표준인 POSIX 방식과 확장된 PCRE(Perl Compatible Regular Expression)이 있다. 정규표현식에 사용하는 예약된 기호를 Meta문자라고 하는데, 주요 Meta 문자는 아래와 같다.

 Meta문자

 설명 

 예시 

 ^

 문자열에서 시작점을 의미함

 ^a : a로 시작하는 문자열

예) a, aa, abc 등이 해당됨 

 $

 문자열에서 끝을 의미함

 $a : a로 끝나는 문자열

 예) a, aa, xya 등이 해당됨 

 .

 1개 문자를 의미함

 a.b 

 예) axb, acb 등이 해당됨 

 ?

 앞의 요소가 0회 또는 1회 존재함 

 colou?r

 예) color, colour가 해당됨 

 *

 앞의 요소가 0회 또는 1회 이상 존재함 

 ab*c

 예) ac, abc, abbc, abbbc 등이 해당됨 

 +

 앞의 요소가 1회 또는 그 이상 존재함

 ab+c
 예) abc, abbc, abbbc 등이 해당됨 

 |

 앞 요소 또는 요소 중 하나를 의미함. or 조건 임  

 x|y
 예) x 또는 y 가 해당됨 

 [ ]

 [ ] 사이에 포함된 단일문자만 매치 

 [ab] 
 예) a 또는 b 가 해당됨 

 [^ ]

 [ ] 사이에 포함되지 않은 문자만 매치 

 [^ab]
 예) c, d, e 등이 해당됨