본문 바로가기

OS/Linux

#07. 정규표현식(Regular Expression)

이번 소개에서는 아주 자주 쓰이는 정규표현식에 대해서 소개해드리겠습니다.

정규표현식이란, 문자열의 집합을 묘사하여 조작 또는 검색에 사용되는 텍스트 스트링입니다.


그럼 정규표현식에서 쓰이는 케릭터들에 대해서 소개 해드리도록 할께요.


^ 줄의 시작점  ([]안에서는 부정의 의미를 가지고있음)

Ex)

^a            행에서 문자 a로 시작


$ 줄의 마지막점

Ex)

b$            행에서 문자 b로 끝


* 바로앞의 문자열이나 정규표현식을 0개이상 반복

Ex)

c*           문자 c로 0개 이상 반복되는 문자나 문자열


+ 바로앞의 문자열이나 정규표현식을 1개이상 반복(grep에선 사용불가)

Ex)

4+        숫자 4가 1개이상 반복


? 바로앞의 문자열이나 정규표현식이 0개 또는 1개(grep에선 사용불가)

Ex)

/?        /가 존재하거나 존재 하지 않거나

|  두개의 값중 하나(grep에선 사용불가)

Ex)

a|A        소문자 a 이거나 대문자 A 이거나


. 새로운라인을 제외한 글자,공백등 오직 한개와 일치

Ex)

d.            문자 d뒤에 글자,공백등 아무 문자나 기호가 붙은것


[ ] 문자들의 집합

Ex)

[a-e]        a~e 사이의 문자

[^a-e]       a~e 사이의 문자를 제외한 나머지 문자

[ad]            a또는 d 문자

[A-Ce-z]    A~C사이 문자 또는 e~z사이의 문자


\ 정규표현식의 특수 문자를 문자 의미 그대로 해석

Ex)

\^            문자 ^ 를 뜻함


( ) 괄호. 최대 9개까지 사용 가능 (grep에선 \( \)로쓰임)

Ex)

(movenpick)*            movenpick이라는 단어가 0개이상 반복


\< 단어의 시작점

Ex)

\<[ac]                   a 또는 c 로 시작하는 단어


\> 단어의 마지막점

Ex)

z\>                           z로 끝나는 단어


\{n\} 바로앞의 문자열 이나 정규표현식 n번 반복

Ex)

[a-z]\{3\}                소문자로 3번 반복


\{n,\} 바로앞의 문자열 이나 정규표현식 n번 이상 반복

Ex)

(movenpick)\{2,\}        movenpick이라는 문자열 2번이상 반복


\{n,m\} 바로앞의 문자열이나 정규표현식 n~m번 반복

Ex)

[0-9]\{3,5\}                    숫자가 3~5번 반복




이번 소개에서는 몇몇 명령어에서 쓰이는 정규표현식을 먼저 소개 해드렸습니다.

이번 소개엔 그림 과 같은 예제는 없지만 하나하나씩 예제를 드렸으니 잘 보시고 이해하시길 바랍니다! 그래야 다음 소개에서 배우는 명령어등에서 쓰이는 정규표현식을 봐도 햇갈리지 않으시고 잘이해 하실수있을테니까요!

'OS > Linux' 카테고리의 다른 글

#09. User Account Management(사용자계정 관리)  (0) 2012.09.13
#08. grep/egrep, awk  (0) 2012.09.12
#06. Standard I/O Redirection  (0) 2012.09.10
#05. shell, 변수  (0) 2012.09.10
#04. Vim Editor  (0) 2012.09.09