Czy da się to zrobić? Używamy VS2005, VS2008 i VS2010.
Nie mam na myśli wyrażeń regularnych - które mają swoje miejsce - ale zwykły stary tekst znajdź i zamień. Wiem, że możemy to zrobić (w mgnieniu oka) za pomocą wyrażeń regularnych przy użyciu znacznika \ n, ale wolimy nie zaplątać się w znaki ucieczki wyrażeń regularnych, a ponadto występuje problem z czytelnością.
Jeśli nie można tego zrobić, z jakiej prostej i prostej (bezpłatnej) alternatywy korzystają ludzie? Nie wymaga to podrzucenia naszego własnego makra.
visual-studio
ide
replace
multiline
hawbsl
źródło
źródło
Odpowiedzi:
W końcu to znalazłem ...
Nie ma potrzeby pobierania i ładowania jakichkolwiek zewnętrznych makr.
Działa przynajmniej w Visual Studio 2008 z wbudowanym makrem. :)
Kroki:
1) Wybierz tekst, który chcesz znaleźć.
2) Naciśnij „Alt + F8” lub otwórz „Narzędzia -> Makra -> Eksplorator makr”
3) Kliknij dwukrotnie „Próbka -> Narzędzia -> FindLine”. (Otworzy się pole wyszukiwania z zaznaczeniem załadowanym w polu „Znajdź”. Nie martw się o obcięty tekst pokazany w polu „Znajdź”. Zaufaj mi, pole ma wszystko… sposobem MS na pokazanie tego może być ...: ))
4) Kliknij przycisk „Szybka zamiana” w oknie dialogowym „Znajdź i zamień”. Wpisz tekst zastępczy.
5) I kliknij dowolny z 3 przycisków zgodnie z wymaganiami ... i gotowe. :)
Hurra… to działa… Może nie być prostym sposobem na zrobienie tego, ale wiesz, że z MS… nic nie jest proste i łatwe… :)
źródło
Działa to dzisiaj w programie Visual Studio 2012:
Zobacz, jak
(.*\n)+?
część pasuje do wielu linii, nie jest chciwa.fooPatternToStart
to jakiś wzorzec wyrażenia regularnego w linii początkowej, abarPatternToEnd
wzór do znalezienia w innym wierszu poniżej, prawdopodobnie w wielu wierszach poniżej ...Przykład znaleziony tutaj .
Prosty i skuteczny :)
Uwaga: przed VS2012 działał wzór:
fooPatternToStart.(.\n)+@.*barPatternToEnd
źródło
Możesz rzucić okiem na ten wpis na blogu:
Wielowierszowe wyszukiwanie i zamienianie w programie Visual Studio
Udostępnia kod makra umożliwiający uniknięcie wyszukiwania i wyświetlenie okna dialogowego Znajdź i zamień VS.
źródło
Możesz wyszukiwać wyrażenia wielowierszowe, klikając pole wyboru „Użyj wyrażeń regularnych” w oknie dialogowym „Znajdź i zamień”. Podziały wierszy są wtedy oznaczone symbolem
\n
.źródło
\n
na,\r\n
jeśli dokument zawiera ukryte powroty karetki.Używam tego: Visual Studio Gallery Multiline Search and Replace
źródło
Jest dostarczany tylko przez firmę Microsoft. Sprawdź https://visualstudiogallery.msdn.microsoft.com/699CE302-B0D4-4083-BE0E-1682E873CEBF .
Używa tylko wyrażeń regularnych. Ale dla tych, którzy nie znają regex, lepiej go używaj.
źródło
Możesz także otworzyć pliki za pomocą UltraEdit, który w pełni obsługuje zastępowanie MultiLine. Możesz użyć wersji próbnej, jeśli zamierzasz użyć jej tylko raz.
źródło
Odnośnie komentarza Andrew Corkery'ego 19 sierpnia 2011 o 9:52 powyżej:
Jeśli chcesz również określić wielowierszowy ciąg zastępujący, edytuj kod makra i ustaw tekst zastępczy, jak pokazano poniżej. Umożliwi to „dostrojenie” zamiennika za pomocą niewielkich niezbędnych modyfikacji.
źródło
Najnowsza wersja (od tego postu) Notepad ++ umożliwia wyszukiwanie / zastępowanie wielu wierszy. Nie wiem, czy to była prawda, kiedy o to pytano. Ale bez obsługi makr w programie Visual Studio jest to teraz istotne.
źródło