| 메타문자 | 기능 |
사용 예 |
설명 |
|
| ^ |
행의 시작 지시자 |
'^love' |
love로 시작하는 모든 행과 대응 |
|
| $ |
행의 끝 지시자 |
'love$' |
love로 끝나는 모든 행과 대응 |
|
| . |
하나의 문자와 대응 |
'l..e' |
l 다음에 두 글자가 나오고 e로 끝나는 문자열을 포함하는 행과 대응 |
|
| * |
선행 문자와 같은 문자의 0개 이상의 개수와 대응 |
' *love' |
0개 이상의 공백 문자 후에 love로 끝나는 문자열을 포함한 행과 대응 |
|
| [ ] |
[ ]사이의 문자집합 중 하나와 대응 |
'[Ll]ove' |
love나 Love를 포함하는 행과 대응 |
|
| [^ ] |
문자집합에 속하지 않는 한 문자와 대응 |
'[^A-KM-Z]ove' |
A와 K 사이의 범위에 포함되지 않거나, M과 Z 사이에 포함되지 않는 한 문자와 ove가 붙어 있는 문자열과 대응 |
|
| + |
선행문자와 같은 문자의 1개 이상의 개수와 대응 |
'[a-z]+ove' |
a와 z 사이의 1개 이상의 문자와 ove가 붙어있는 문자열과 대응(ex: move, love, ...) |
|
| ? |
선행문자와 같은 문자의 0개 혹은 1개와 대응 |
'lo?ve' |
l 다음에 o가 0개 혹은 1개이고 ve가 붙어있는 문자열과 대응. love 혹은 lve. |
|
| a|b |
a 혹은 b와 대응 |
'love|hate' |
love 혹은 hate와 대응 |
|
| ( ) |
정규표현식을 묶어준다 |
'lov(able|ely)' '(ov)+' |
lovable 혹은 lovely와 대응 ov가 한 번 이상 등장하는 문자열과 대응 |
개인적으로 처음으로 정규식을 사용하게 되었던게 C#에서 문자열 처리를 해야할 때였다. C#에서는 좀더 확장된 기능을 사용할 수 있어서 편리했던 것 같다(물론 큰 차이는 없지만...). egrep에 좀 더 익숙해지면 아마도 충분히 편리하게 사용할 수 있을 것 같다.
TRACKBACK 0 AND
COMMENT 0

PREV