본문 바로가기

진리는어디에

정규 표현식(Regular Expressions)

/**
 개인적으로 UNIX/Linux 환경에서 작업을 하다 보면 정규 표현식을 사용해야 하는 경우가 종종 발생한다.
 정규 표현식을 사용하지 않는다고 하더라도 크게 못할일은 없지만, 무식하면 손발이 고생한다는 말을 절실하게 느끼게 된다. 이왕이면 할일이면 고생스럽게 손노가다를 하느니 간단하게 정규표현식을 이용해서 처리하면 더 좋지 아니한가?

 그리고 한가지!! 나도 매일 착각하는 것이지만 정규 표현식에 적용되는 것은 문자 하나 단위지 문자열 단위가 아니라는 것!! 잊지 말아야 하겠다..
*/

.

개행문자를 제외한 어떠한 문자와도 매칭

*

이전 표현식과 매칭되는 문자가 0개 이거나 그 이상이 있음

+

이전 표현식과 매칭되는 문자가 1개 이거나 그 이상이 있음

?

이전 표현식과 매칭되는 문자가 0개 이거나 1개가 있음

$

문자열의 마지막 문자와 매칭

\

escape 문자 앞에 사용하여 literal문자로 표시

[]

정규식을 그룹으로 묶는다.

, [] 기호 안에 ^가 들어가면 []안에 있는 문자들을 제외 한 모든 문자와 매칭 된다는 뜻이다.

i.e) [^0-9] 숫자를 제외한 모든 문자와 매칭

{}

이전에 표현된 패턴이 얼마나 반복 될 것인가를 지정.

i.e) A{1,3} A 1~3회 연속 되는 패턴과 일치한다.

()

정규표현식들을 그룹화 한다.

*, +, and, | 를 사용하는 복잡한 표현식들을 묶어서 사용할 때 유용하다.

|

|으로 구분되어 있는 문자열중 하나와 매칭된다.

i.e) cow|cat|dog dog와 매칭 된다.

“…”

“ ” 사이에 있는 모든 문자열은 문자 그대로 해석되며 meta-character들은 그 본래의미를 잃는다.

 

유익한 글이었다면 공감(❤) 버튼 꾹!! 추가 문의 사항은 댓글로!!