Total Commander Korean Forum :: XPG Community 게시판 인덱스 » Tip & Tech

글 쓰기   답변 달기
주제 : 정규표현식 기초 - 표로 정리해 보았습니다
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
MiLLENiS접속안함
Power Admin
Power Admin
가입: 2005년 2월 16일
글수: 323
포인트: 12363
Post Level: 16
 
0 / 556
265 / 265
31 / 39
올리기올려짐: 2005-3-16 수, 20:44   주제: 정규표현식 기초 - 표로 정리해 보았습니다
인용과 함께 답변

이 글은 pjhplace(시뮬레이)님으로부터 허락을 받아
http://cafe.naver.com/totalcommander/803의 글을 옮겨온 것입니다.
원문을 그대로 게재하는 것이 예의겠으나, 본 포럼에 맞게 일부 모양새를 변경하였습니다.
전제를 허락해주신 pjhplace님께 이자리를 빌어 다시 한번 감사드립니다.

클릭하시면 원래 크기로 보실 수 있습니다.
아래에 lyster235 (이상호) 님의 강좌에 이어 한번 더 올리겠습니다.
강좌는 아니고요 여기저기 내용들을 모아 편집한 것에 불과합니다.
정규표현식이 두루 써먹을 곳이 많을 것 같아 갑자기 의욕이 생겨서 만들어보았습니다. 저도 공부하고요.

참고 출처
네이버 블로그 ‘장미왕국’ - http://blog.naver.com/rosekingdom/60001377686

네이버 블로그 ‘그이름의 승리’
- http://blog.naver.com/adoni153.do?Redirect=Log&logNo=40001173901

Total Commander 도움말 - Regular Expressions

I♡토탈커맨더 게시물 - lyster235 (이상호 님) : 토탈 커맨더의 정규 표현식 (번역)


정규표현식의 기본 문법

정규표현식은 소프트웨어에 따라서 방식이나 지원 범위가 다를 수 있습니다.

^The The로 시작하는 문자열
of despair$ of despair로 끝나는 문자열
^abc$ abc로 시작하고 abc로 끝나는 문자열 (abc 라는 문자열도 해당됨)
notice notice가 들어 있는 문자열

ab* a 다음에 b가 0개 이상 (a, ab, abbb 등등)
ab+ a 다음에 b가 1개 이상 (ab, abbb 등등)
ab? a 다음에 b가 있거나 없거나 (ab 또는 a)

ab{2} a 다음에 b가 2개 있는 문자열 (abb)
ab{2,} a 다음에 b가 2개 이상 (abb, abbbb 등등)
ab{3,5} a 다음에 b가 3개에서 5개 사이 (abbb, abbbb, 또는 abbbbb)
*, +, ?는 각각 {0,}, {1,}, {0,1}과 같습니다.

( )는 문자열을 묶음 처리할 때 사용
a(bc)* a 다음에 bc가 0개 이상 (묶음 처리)
a(bc){1,5} a 다음에 bc가 1개에서 5개 사이

hi|hello hi hello가 들어 있는 문자열
(b|cd)ef bef 또는 cdef
(a|b)*c a와 b가 섞여서 여러번 나타나고 그뒤에 c가 붙어있는 패턴

. (점) 임의의 한 문자
^.{3}$ 3문자로만 되어 있는 문자열

[ ] 괄호 안에 있는 내용 중 임의의 한 문자
[^ ] 첫문자로 ^를 쓰면 괄호 내용의 부정. 즉 괄호 안에 포함되지 않는 한 문자
[ab] a 또는 b (a|b 와 동일한 표현)
[a-d] 소문자 a에서 d까지 (a|b|c|d 또는 [abcd] 와 동일)
^[a-zA-Z] 영문자로 시작하는 문자열
[0-9]% % 문자 앞에 하나의 숫자가 붙어 있는 패턴
%[^a-zA-Z]% 두 % 문자 사이에 영문자가 없는 패턴

특수 문자 자체를 검색하기 및 사용하기
\^ ^ \. .
\[ [ \$ $
\( ( \) )
\| | \* *
\+ + \? ?
\{ { \\ \
\n 줄넘김 문자 \r 리턴 문자
\w 알파벳과 _ (언더바) \W 알파벳과 _ 가 아닌 것
\s 빈 공간(space) \S 빈 공간이 아닌 것
\d 숫자 \D 숫자가 아닌 것
\b 단어와 단어 사이의 경계 \B 단어 사이의 경계가 아닌 것
\t Tab 문자 \xnn 16진수 nn에 해당하는 문자
[ ] 안에서는 특수 문자가 모두 효력을 잃게 됩니다.

검색 + 치환을 위한 하부식(부분식)
( )둘러싼 부분은 각각 하나의 덩어리로 취급해서,
검색시 ( ) 안에 해당되는 내용들을 변경할 내용에서 그대로 가져다 이용할 수 있습니다.
검색된 각각의 ( )안에 해당되는 내용은 변경할 내용에서 $1, $2, .. 등으로 지정해서 쓸 수 있습니다.
예제) mp3파일 이름 바꾸기
검색 : (.*) - (.*)\.mp3 .*은 길이에 상관없이 임의의 문자열, \.은 점
치환 : $2 - $1.mp3 앞에서 검색한 ( )안에 해당되는 내용끼리 순서 바꾸기
ex) "제목 - 연주자.mp3" Þ "연주자 - 제목.mp3"
앞에서 정의한 하부식을 다시 활용하기 (제가 잘못 이해한 것일 수도 있는데)
\n은 ( ) 하부식 중에서 n번째 하부식을 가리킵니다.
예제) (.+)\1+
\1로 되어 있으니까 첫번째 부분식 (.+)를 가리킵니다. 위 내용을 해석하자면, 일단 (.+)가 있으니까 이에 해당되는 내용을 찾고, \1+이 있으니까 첫번째 부분식 (.+)와 똑같은 내용이 그 뒤에 1번 이상 있는 문자열을 찾습니다.
예제) abab같은 문자열이 위에 해당되는데, 일단 (.+) 즉 임의의 문자열 ab를 찾고 그 뒤에 \1+로 첫번째 부분식을 다시 1번 이상 있는 것을 찾으니까 뒤의 ab가 이에 해당합니다.

변경자 ? 검색 방식 변경
(?i) 대소문자 무시 (기본값)
(?-i) 대소문자 구분
(?g) "greedy" 모드로 전환 (기본값)
(?-g) "greedy" 모드 해제, 따라서 "+"는 "+?"과 동일한 것으로 인식
Sponsor
올리기올려짐: 2005-3-16 수, 20:44   주제: Sponsor


위로
이메일 보내기 글 올린이의 웹사이트 방문 
Xcaliber™
Site Admin
Site Admin
아바타
위치: Your Heart..!!
성별: 남
포인트: 79455
Post Level: 39
 
0 / 4676
2232 / 2232
126 / 160
올리기올려짐: 2005-5-09 월, 13:06   주제:
인용과 함께 답변

korisaram님이 올려주신 정규식 도우미와 같은 도우미 툴을 하나 소개합니다.

파워풀한 GREP툴로 유명한 PowerGREP과 단짝인 RegexBuddy입니다.

클릭하시면 원래 크기로 보실 수 있습니다.
클릭하시면 원래 크기로 보실 수 있습니다.
클릭하시면 원래 크기로 보실 수 있습니다.
클릭하시면 원래 크기로 보실 수 있습니다.
클릭하시면 원래 크기로 보실 수 있습니다.


첨부파일 보기
_________________
포럼 단축키 안내 :: 포럼 매뉴얼 :: 토커 포럼 뉴스 :: Mobile Page :: BBCode 사용법 :: Google에서 검색 :: 토커 FAQ

Xcaliber Power Guide!! - http://xpg.in

- ioFTPD Korea Docs - http://xpg.in/ioftpd
- ioFTPD Korea Docs Forum - http://xpg.in/ioftpd/forum
- Total Commander Korean WiKi - http://xpg.in/tc/wiki
- Total Commander Korean Forum - http://xpg.in/tc

- xpg in the spirits of freedom -
위로
이메일 보내기 글 올린이의 웹사이트 방문 
entryno접속안함
power
power
가입: 2005년 2월 23일
글수: 503
성별: 남
포인트: 12775
Post Level: 20
 
0 / 893
426 / 426
37 / 52
올리기올려짐: 2005-5-09 월, 14:31   주제:
인용과 함께 답변

일단은 너무 어렵다. 힘들겠다 라는 느낌입니다.
저는 그냥 토커 수준의 정규표현식 정도로 만족할랍니다. 이것 만으로도 충분히 놀랍고, 굉장하거든요.ㅎㅎㅎㅎ
감사합니다.
위로
이메일 보내기 
zerojin접속안함
가입: 2007년 6월 12일
글수: 4
성별: Unknown
포인트: 57
Post Level: 1
 
0 / 18
8 / 8
3 / 9
올리기올려짐: 2007-6-12 화, 13:21   주제:
인용과 함께 답변

Power GREP라 써보고 싶어지네요.. 짱이야
_________________
감사합니다. ^^
위로
zerojin접속안함
가입: 2007년 6월 12일
글수: 4
성별: Unknown
포인트: 57
Post Level: 1
 
0 / 18
8 / 8
3 / 9
올리기올려짐: 2007-6-12 화, 13:23   주제:
인용과 함께 답변

PowerGrep $149 통곡
_________________
감사합니다. ^^
위로
Xcaliber™
Site Admin
Site Admin
아바타
위치: Your Heart..!!
성별: 남
포인트: 79455
Post Level: 39
 
0 / 4676
2232 / 2232
126 / 160
올리기올려짐: 2007-8-08 수, 17:59   주제:
인용과 함께 답변

또다른 정규식 도우미 툴인 The Regex Coach 입니다.

http://weitz.de/regex-coach/
Download

클릭하시면 원래 크기로 보실 수 있습니다.


첨부파일 보기
_________________
포럼 단축키 안내 :: 포럼 매뉴얼 :: 토커 포럼 뉴스 :: Mobile Page :: BBCode 사용법 :: Google에서 검색 :: 토커 FAQ

Xcaliber Power Guide!! - http://xpg.in

- ioFTPD Korea Docs - http://xpg.in/ioftpd
- ioFTPD Korea Docs Forum - http://xpg.in/ioftpd/forum
- Total Commander Korean WiKi - http://xpg.in/tc/wiki
- Total Commander Korean Forum - http://xpg.in/tc

- xpg in the spirits of freedom -
위로
이메일 보내기 글 올린이의 웹사이트 방문 
xtonart접속안함
junior
junior
가입: 2006년 9월 13일
글수: 35
성별: Unknown
포인트: 749
Post Level: 4
 
0 / 61
29 / 29
8 / 11
올리기올려짐: 2008-10-18 토, 14:13   주제:
인용과 함께 답변

감사합니다 유용하게 잘쓸께요
위로
tok1223접속안함
beginner
beginner
아바타
가입: 2009년 11월 3일
글수: 12
성별: Unknown
포인트: 1279
Post Level: 2
 
0 / 30
14 / 14
2 / 8
올리기올려짐: 2010-6-03 목, 13:54   주제:
인용과 함께 답변

정규식이란게 모든 프로그램에서 통일된 건가요? 아니면 조금 유사하기는 하지만, 각 프로그램마다 별도 규정을 배워야 하는건지? 그리고 정규식도우미 틀이라는것이 어떤 프로그램을 목적 대상으로 만들어진 것인지도,, 궁금합니다... 일일이 다 사용해보면 알 것 같기는 한데,, 헤,,초보 입문이 좀 어려워 보여서,,,
_________________
모두 함께 선한 뜻을 지혜롭고 행복하게 실현해나갑시다. 파이팅!!!
위로
nancy2092접속안함
power
power
가입: 2005년 7월 5일
글수: 201
성별: Unknown
포인트: 3746
Post Level: 13
 
0 / 370
176 / 176
7 / 30
올리기올려짐: 2010-6-03 목, 19:56   주제:
인용과 함께 답변

제가 아는건 별로없지만 답변을 달겠습니다.

대표적인 정규표현식은 펄스크립트 정규표현식입니다.

http://www.pcre.org/pcre.txt

이외에도 각 프로그래밍 언어에 따라 정규식표현식이 있는 조금씩 차이가 있습니다.

기본적인 명령이나 구문은 거의 통일되어있는 것 같습니다. 정규표현식이 계속

확장되면서 조금씩 차이를 보이고 있죠.


이걸 테스트에디터 등의 프로그램이나 스크립트에서 차용합니다. 하지만 정규표현식의 구문이나 명령은

계속 확장되기 때문에 모든 기능이 포함되기는 어렵습니다. 표로 정리한 수준(토커수준)

만 익혀도 별 문제가 없습니다. 대부분의 프로그램이 표 수준이하의 정규표현식을 지원합니다.

정규표현식이 특화된 소프트가 아니면 정규표현식의 확장된 기능에 무심합니다. 졸려
위로
이전 글 표시:   
글 쓰기   답변 달기    Total Commander Korean Forum :: XPG Community 게시판 인덱스 » Tip & Tech


이 주제 안에서 찾기:   

바로 이동:  

새로운 주제를 올릴 수 없습니다
답글을 올릴 수 없습니다
주제를 수정할 수 없습니다
올린 글을 삭제할 수 없습니다
투표를 할 수 없습니다
파일 첨부를 할 수 없습니다
파일 다운로드 할 수 있습니다