Quantcast
Channel: devstyle.pl | Maciej Aniserowicz » visual studio
Viewing all articles
Browse latest Browse all 18

Regex w Visual Studio – lazy mode

$
0
0

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).


Viewing all articles
Browse latest Browse all 18

Trending Articles