fbpx
devstyle.pl - Blog dla każdego programisty
devstyle.pl - Blog dla każdego programisty
2 minut

Regex w Visual Studio – lazy mode


23.02.2009

Bardzo przydatną funkcjonalnością w Visual Studio jest wyszukiwanie z wykorzystaniem wyrażeń regularnych:

Przyzwyczajeni do .NETowej składni języka możemy natknąć się na pewien problem. Otóż standardowy tryb działania tego silnika w VS (jak i chyba wszystkich popularnych silników regex?) to tryb zachłanny, czyli “greedy”. Polega on na dopasowaniu tekstu o maksymalnej długości. Składnią służącą do jego uzyskania jest gwiazdka *, tak samo jak w standardowych regexach. Jeżeli jednak napotkamy potrzebę użycia trybu “lazy”, czyli znalezienie minimalnego tekstu dopasowującego się do wzorca, z przyzwyczajenia możemy użyć wyrażenia *?, jak ma to miejsce w wyrażeniach .NETowych. I tu czeka nas niespodzianka, ponieważ podane wyrażenie nam nie zadziała. Kiedyś założyłem, że zmuszenie VS do “leniwego” wyszukiwania jest po prostu niemożliwe. Niedawno jednak zacząłem zgłębiać temat i okazało sie, że cały czas miałem rozwiązanie przez oczami… Po zauważeniu opcji w menu:

wszystko stało się jasne. Leniwy odpowiednik * to @, leniwy odpowiednik + to #. Więcej w MSDN: Regular Expressions (Visual Studio).

Nie przegap kolejnych postów!

Dołącz do ponad 9000 programistów w devstyle newsletter!

Zapisując się na newsletter zgadzasz się na przetwarzanie Twoich danych osobowych w celu wysyłania na wskazany przez Ciebie adres e-mail informacji handlowych o nowościach, promocjach, produktach i usługach związanych z serwisem devstyle.pl. Będzie to marketing bezpośredni, do realizacji którego wykorzystam Twoje telekomunikacyjne urządzenia końcowe. Administratorem Twoich danych osobowych będzie Maciej Aniserowicz prowadzący działalność gospodarczą w Białymstoku (15-215) przy ul. Konopnickiej 14/8, NIP 5422824401. Przysługuje Tobie prawo do cofnięcia zgody, żądania wglądu do Twoich danych, wniesienia sprzeciwu co do ich przetwarzania, sprostowania, usunięcia i ograniczenia przetwarzania. Więcej informacji o tym jak przetwarzam Twoje dane znajdziesz na devstyle.pl/RODO. Powered by ConvertKit
Notify of
Marcin Ż.
Marcin Ż.

Nawet Tobie, staremu resharperowcowi zdarza sie korzystac z “Find in Files…”? ;)

Procent

Niestety czasami trzeba:). Z różnych względów… jednym z nich jest niestety bug w R# w funkcjonalności “Find all usages” – kilka razy zdarzyło mi się, że nie wskazał mi nawet tak banalnego przypadku jak wywołanie własnej prywatnej metody zawarttej w tym samym pliku. Od tamtej pory przestałem bezgranicznie ufać JetBrains i zanim zmodyfikuję coś dużego – wolę upewnić się takim właśnie brute forcem:)

Kurs Gita

Zaawansowany frontend

Szkolenie z Testów

Szkolenie z baz danych

Facebook

Książka

Zobacz również