본문 바로가기

개발 관련

Visual Studio ‘찾기 및 바꾸기’ 에서 정규표현식 사용하기

Visual Studio ‘찾기 및 바꾸기’ 에서 정규표현식 사용하기

 

정규표현식은 사용하기 다소 껄끄럽지만적절히 잘 사용하면 상당히 편리하다.

특정 문자열이 아닌 패턴을 찾거나검색의 범위를 좁히거나 할 때 등이다.

 

그러나일반 정규식과 visual studio에서 사용하는 정규식은 약간 다르다.

예를 들어, 10진수를 찾을 경우[0-9]와 같이 표현하나, visual studio에서는 :d 라고 표현한다.

 

사용 방법 :

Visual studio에서 찾기버튼을 누르면 아래와 같이 나오고그림처럼 사용한다.

찾기 옵션에서 정규식 사용(E)에 체크하고, ‘’ 화살표가 활성화되며 이를 클릭하면 약간의 도움말을 보여준다.

그리고 정규표현식을 사용하면 된다.

 

 

 

위 그림의 정규식 :b+:z 는 공백이나 탭(:b)이 한번이상(+)나온후 10진수(:z)가 나오는 패턴을 찾는다. ‘     1’, ‘                  10’ 이런 것들을 찾아준다.

 

아래와 같이 사용하면 따옴표(“”)로 묶은 문자열만 찾을 수도 있다.

"{([:Ha:Wh:Pu:a])+}"

:Ha – 한글, :Wh – 공백, :Pu – 기호, :a – 영숫자, + - 1개이상 문자

 

그리고 바꾸기를 할 경우에는 \0, \1 등 을 사용할 수 있다.

 

 

검색 문자열과 일치하는 문자나 숫자를 찾는 데 다음 식을 사용할 수 있다.[1]

(더 자세한건 [1]을 참조)

 

구문

설명

모든 문자

.

줄 바꿈 문자를 제외한 모든 단일 문자를 찾습니다.

최대-0번 이상

*

앞의 식을 0번 이상 찾습니다.

최대-한 번 이상

+

앞의 식을 한 번 이상 찾습니다.

최소-0번 이상

@

앞의 식을 0번 이상 찾으며 가능한 한 적은 수의 문자가 일치하는 경우만 찾습니다.

최소-한 번 이상

#

앞의 식을 한 번 이상 찾으며 가능한 한 적은 수의 문자가 일치하는 경우만 찾습니다.

n번 반복

^n

앞의 식과 일치하는 항목을 n개 찾습니다[0-9]^4    임의 4자리 시퀀스를 찾습니다.

문자 집합

[]

[] 안의 문자 중 하나를 찾습니다문자 범위를 지정하려면 대시(-)로 구분하여 시작 및 끝 문자를 입력합니다(: [a-z]).

영숫자

:a

해당 식을 찾습니다
([a-zA-Z0-9]).

영문자

:c

해당 식을 찾습니다
([a-zA-Z]).

10진수

:d

해당 식을 찾습니다
([0-9]).

16진수

:h

해당 식을 찾습니다
([0-9a-fA-F]+).

식별자

:i

해당 식을 찾습니다
([a-zA-Z-$][a-zA-Z0-9_$]*).

유리수

:n

해당 식을 찾습니다
(([0-9]+.[0-9]*)|([0-9]*.[0-9]+)|([0-9]+)).

따옴표 붙은 문자열

:q

해당 식을 찾습니다.
(("[^"]*")|('[^']*'))

영문자열

:w

해당 식을 찾습니다.
([a-zA-Z]+)

10진 정수

:z

해당 식을 찾습니다
([0-9]+).

이스케이프

\e

유니코드 U+001B.

경고음

\g

유니코드 U+0007.

백스페이스

\h

유니코드 U+0008.

줄 바꿈

\n

모든 플랫폼에 적용되는 줄 바꿈 문자를 찾습니다바꾸기 식에 줄 바꿈을 삽입합니다.

\t

탭 문자유니코드 U+0009를 찾습니다.

유니코드 문자

\x#### 또는 \u####

유니코드 값이 지정된 문자를 찾습니다여기서 #### 16진수입니다대리자 쌍의 값이 지정되었다고 가정할 경우 ISO 10646 코드 포인트나 두 개의 유니코드 코드 포인트로 기본적인 다국적 문자표에 없는 문자(대리자)를 지정할 수 있습니다.

 

 

<참조>

1. http://msdn.microsoft.com/ko-kr/library/aa293063(VS.71).aspx

2. http://i-ruru.com/406