IT TIP

Visual Studio에서 여러 줄 찾기 및 바꾸기

itqueen 2020. 10. 29. 20:18
반응형

Visual Studio에서 여러 줄 찾기 및 바꾸기


할 수 있습니까? 우리는 VS2005와 VS2008과 VS2010을 사용하고 있습니다.

나는 그 자리가있는 정규식을 의미하는 것이 아니라 평범한 오래된 텍스트 찾기 및 바꾸기를 의미합니다. 나는 우리가 \ n 태그를 사용하는 정규식으로 그것을 할 수 있다는 것을 알고 있지만 정규식 이스케이프 문자로 얽 히지 않는 것을 선호하며 가독성 문제가 있습니다.

할 수 없다면 사람들이 사용하는 단순하고 단순한 (무료) 대안은 무엇입니까? 그것은 우리 자신의 매크로를 깨뜨리는 것을 포함하지 않습니다.


드디어 찾았어요 ..

외부 매크로를 다운로드하고로드 할 필요가 없습니다.

적어도 내장 매크로를 사용하여 Visual Studio 2008에서 작동합니다. :)

단계 :
1) 찾고자하는 텍스트를 선택합니다.
2) "Alt + F8"을 누르거나 "도구-> 매크로-> 매크로 탐색기"를 엽니 다.
3) "샘플-> 유틸리티-> FindLine"을 두 번 클릭합니다. ( "찾기"필드에 선택한 항목이로드 된 찾기 상자가 열립니다. "찾기"필드에 잘린 텍스트가 표시되는 것에 대해 걱정하지 마십시오. 믿으십시오. 필드에 모든 것이 있습니다 ..MS 표시 방법은 다음과 같을 수 있습니다 ... : ))
4) "찾기 및 바꾸기"대화 상자에서 "빠른 바꾸기"버튼을 클릭합니다. 대체 텍스트를 입력하십시오.
5) 그리고 귀하의 요구 사항에 따라 3 개의 버튼 중 하나를 클릭하십시오. :)

만세 .. 그것의 작동 .. 그것을하기위한 직접적인 방법은 아니지만 당신은 MS로 알고 있습니다 .. 아무것도 간단하고 쉬운 것은 없습니다 .. :)


이 블로그 항목을 살펴볼 수 있습니다.

Visual Studio에서 여러 줄 검색 및 바꾸기

검색을 이스케이프하고 VS 찾기 및 바꾸기 대화 상자를 표시하는 매크로 코드를 제공합니다.


이것은 현재 Visual Studio 2012에서 작동합니다.

fooPatternToStart.*(.*\n)+?.*barPatternToEnd

(.*\n)+?탐욕스럽지 않은 여러 줄 에서 부품이 어떻게 일치 하는지 확인하십시오 .
fooPatternToStart시작 줄에 정규식 패턴 barPatternToEnd이 있고 패턴은 아래 다른 줄에서 찾을 수 있습니다.

여기에 예제가 있습니다 .

간단하고 효과적인 :)

참고 : VS2012 이전 에는 다음과 같은 패턴이 작동했습니다.fooPatternToStart.(.\n)+@.*barPatternToEnd


"찾기 및 바꾸기"대화 상자에서 "정규 표현식 사용"확인란을 클릭하여 여러 줄 표현식을 검색 할 수 있습니다. 줄 바꿈은로 표시됩니다 \n.

여기에 이미지 설명 입력


나는 이것을 사용한다 : Visual Studio Gallery Multiline Search and Replace


You could also open the files with UltraEdit which fully supports MultiLine replace. You can use the trial version if you only intend to use it once.


Regarding the comment of Andrew Corkery Aug 19 '11 at 9:52 above:

If you like to specify a multi-line replacement string as well, edit the macro code and set the replacement text as shown below. This will allow you to "fine-tune" your replacement with just the small modifications needed.

 Sub FindLine()
    Dim textSelection As TextSelection

    textSelection = DTE.ActiveDocument.Selection
    textSelection.CharLeft(True)
    DTE.ExecuteCommand("Edit.Find")
    DTE.Find.FindWhat = textSelection.Text

    'also preset replacement text with current selection
    DTE.Find.ReplaceWith = textSelection.Text
End Sub

Its provided by microsoft only. Please check https://visualstudiogallery.msdn.microsoft.com/699CE302-B0D4-4083-BE0E-1682E873CEBF.

It uses regular expression only. But for those who don't know regex better to use it.


Notepad ++의 최신 버전 (이 게시물 현재)은 여러 줄 찾기 / 바꾸기를 수행합니다. 이 질문을 받았을 때 이것이 사실인지 모르겠습니다. 그러나 Visual Studio에서 더 이상 매크로 지원이 없으므로 이제 관련이 있습니다.

참고 URL : https://stackoverflow.com/questions/2273434/multiline-find-replace-in-visual-studio

반응형