본문 바로가기

소프트웨어/개발관련

정규 표현식을 배워보자 #02 기초 문법

원문은 ZVON의 Regular Expressions Tutorial을 참조하면됨


Page 1

대문자와 소문자를구분(case sensitive)한다.

Source

Hello, world!

Hello를 검색할 경우

Test Case

Case 1

Regular Expression:

Hello

First match:

Hello, world!

All matches:

Hello, world!

Case1과 같이 대문자로 시작하는 Hello를 표현식으로 하면 대상 문자열인 Hello를 검색,

Case 2

Regular Expression:

hello

First match:

Hello, world!

All matches:

Hello, world!

Case2와 같이 소문자로 시작하는 hello의 경우 매칭되는 문자열이 없음

 

Page 2

Whitespace(space, tab, new line)를 구분한다.

Source

Hello, world!

단어와 단어 사이에 공백이 있는 경우

Test Case

Case 1

Regular Expression:

Hello, world

First match:

Hello, world!

All matches:

Hello, world!

Case1과 같이 대문자로 시작하는 Hello, world(Hello, world 사이에 공백 1) 표현식으로 입력하면 대상 문자열인 Hello, world를 검색

Case 2

Regular Expression:

Hello,    world

First match:

Hello, world!

All matches:

Hello, world!

하지만, Case2와 같이 Hello,  world(Hello, world 사이에 공백 2) 를 입력할 경우 매칭되는 문자열이 없음

 

Page 3

몇몇 문자들은 특별한 의미가 있다.

^는 문장의 시작을, $은 문장의 끝을 의미

Source

who is who

동일한 단어인 who가 문장의 앞과 뒤에 위치해 있을 때

Test Case

Case 1

Regular Expression:

^who

First match:

who is who

All matches:

who is who

Case1의 정규 표현식 ^who who로 시작하는.. 의미로 ^가 사용된 것이기 때문에, 문장 앞부분의 who가 선택된 것이며

Case 2

Regular Expression:

who$

First match:

who is who

All matches:

who is who

Case2who$ who로 끝나는.. 의미로 $가 사용된 것이라서, 문장 끝의 who가 선택됨