티스토리 뷰
정규 표현식(정규식)에는 세 가지 중요한 요소가 있다.
anchor : 텍스트의 한 행을 기준으로 패턴의 위치를 지정
character set : 찾고자하는 문자를 지정
modifier : 그 앞에 있는 문자 집합을 반복하는 횟수를 지정
anchor 에는
1) ‘^’
- 문장의 처음을 나타낸다.
- ex) ^H –> 행의 맨 앞에 있는 H
- ex) H –> 행의 임의의 위치에 있는 H
2) ‘$’
- 문장의 끝을 나타낸다.
- ex) H$ –> 행의 맨 뒤에 있는 H
3) ‘\<’ (Vim)
- 단어의 시작을 나타낸다.
- ex) \<the –> the 와 other를 구별하여 the를 지정할 수 있다.
4) ‘\>’ (Vim)
- 단어의 끝을 나타낸다.
- ex) the\> –> the 와 other를 구별하여 the를 지정할 수 있다.
character set 에는
1) ‘.’
- 행 종료 문자를 제외한 임의의 한 문자를 나타낸다.
- ‘.’ 가 위치한 곳에는 반드시 한 글자가 위치하여야 한다.
- ex) a.b -> 일치하는 문자열 : acb, adb, azb 등
- ex) ab. -> 일치하지 않는 경우 : ab, abcd 등
- ex) ^.$ -> 한 문자만으로 구성되는 행.
2) ‘[]’
- 검색하려는 문자열에서 괄호 안의 문자 중에서 한 개를 정확하게 지정할 경우에 사용
- ex) [a-z] –> 임의의 소문자 한 개
- ex) [0-9] –> 임의의 숫자 한 개
3) ‘[]’ 안에서 ‘^’
- []안의 문자를 제외한 다른 문자
- ex) [^0-9] –> 숫자를 제외한 임의의 문자 한 개
modifier 에는
1) ‘*’
- 바로 앞의 문자를 0번 이상 반복(반복 횟수의 max는 지정 불가능).
- * 앞에는 한 글자 이상의 단어가 반드시 와야 한다.
- ex) a*b -> b, ab, aab 등
- ex) *ab –> 불가능
2) ‘\{\}’ : 정규표현식(sed)
- \{\} 앞의 문자나 문자열의 반복되는 회수를 임의대로 지정.
- ex) go\{5\}ggle → gooooogle
- ex) go\{3,\}ggle → gooogle, goooogle, gooooogle 등 (o가 3개 이상)
- ex) go\{2,4\}ggle → google, gooogle, goooogle (o가 2개이상 4개이하)
3) ‘+’ 특수문자 : 확장 정규 표현식(egrep or awk)
- 바로 앞의 문자를 1번 이상 반복(반복 횟수의 max는 지정 불가능).
- + 앞에는 한 글자 이상의 단어가 반드시 와야 한다.
- ex) a+b -> ab, aab, aaab 등
- ex) +ab -> 불가능
4) ‘?’ 특수문자 : 확장 정규 표현식(egrep or awk)
- 바로 앞의 문자가 하나 있거나 없는 것(반복 횟수 지정).
- ex ) 패턴 : try? → 일치하는 문자열 : tr, try
- ex ) 패턴 : a?c → 일치하는 문자열 : c, ac
5) ‘()’ 특수문자 : 확장 정규 표현식(egrep or awk)
- ()안의 글자들을 하나의 문자로 보며, awk문에서 반복횟수를 지정하기 위해서는
- ex) (hero_)+ –> hero_, hero_hero_ 등
- ex) (hero_)* -> null, hero_, hero_hero_ 등
'리눅스 > Linux 입문' 카테고리의 다른 글
[리눅스] vi 명령어 (0) | 2011.10.17 |
---|---|
기본으로 설치된 아파치 삭제하기 (0) | 2011.10.11 |
httpd --help 옵션 설명 (0) | 2011.10.11 |
리눅스 열린 포트 확인 (0) | 2011.10.11 |
리눅스 아파치 설치 및 삭제 (0) | 2011.10.11 |
- Total
- Today
- Yesterday
- java파일복사
- 이클립스 단축키
- 체크박스
- eclipse 단축키
- 펌방지해제
- 자바스크립트강의
- 자바 객체
- sax vs dom
- jason marz im yours
- java 인스턴스
- Marry You
- 갈릴레오 svn
- This Android SDK requires An...e ADT to the latest version
- eclipse svn
- 스크린세이버
- java 객체
- bruno mars marry you
- 타루 예뻐할께
- marry you 프로포즈
- 불독맨션 좋아요
- Split
- Mysql명령어
- 자바정의
- java파일삭제
- jason maraz
- javascript강의
- 문자열자르기
- lol 서포터
- MySQL
- dom vs sax
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |