4. díl - Visual Studio - Vyhledávání a nahrazovaní v textu

C# .NET Visual Studio Visual Studio - Vyhledávání a nahrazovaní v textu

Vítám Vás u pokračování seriálu, kde si popisujeme jedno z nejpopulárnějších IDE - Visual Studio.

Vyhledávání v textu

Visual Studio umí v textu (kódu) vyhledávat s docela širokými možnostmi nastavení. K dispozici máme dva nástroje - normální a rychlé vyhledávání. K oboum se dostanete přes nabídku Edit > Find and Replace a zde jsou možnosti Quick Find a Find in Files. Lepší a pohodlnější je ale zapamatovat si zkratku Ctrl + F a Ctrl + Shift + F.

Rychlé vyhledávání

Rychlé vyhledávání obsahuje jen nejpodstatnější políčka - to co se bude vyhledávat a kde se bude vyhledávat. Co se bude vyhledávat je text nebo regulární výraz. Kde se bude vyhledávat je ve výchozím nastavení nastaveno na Current Document, což vyhledává v aktuálně otevřeném dokumentu, dále tam jsou možnosti:

Current Block vyhledává v aktuálním bloku, nejčastěji metodě. V závorce je uveden název bloku. Pokud žádný blok není, nebo to editor daného jazyka nepodporuje, tato možnost zde nebude.

Selection vyhledává ve výběru.

All Open Documents vyhledává ve všech otevřených zdrojových kódech.

Entire Solution vyhledává napříč celým řešením ve všech dokumentech.

Vyhledávání v aktuálním dokumentu, bloku a výběru funguje interaktivně, již při psaní vidíte výsledky hledání. Při vyhledávání v otevřených oknech a v řešení vyhledávání ještě musíte potvrdit šipkou vpravo. Tato šipečka má i své rozšířené možnosti, ve kterých se nachází třeba možnost hledat zpět nebo zobrazit seznam všech nálezů, což otevře okno Find Result.

Vlevo dole se nacházejí rozšířené možnosti (zleva):

  • Rozlišování velikosti písmen
  • Hledání jako celé slovech (Regex nebude nalezen ve výrazu RegexOptions)
  • Hledání pomocí regulárního výrazu

Hledání v souborech

Hledání v souborech otevře plovoucí okno Find and Replace, které umožňuje podobné kousky jako rychlé vyhledávání.

Ve Find Options (zobrazíte je pluskem) tohoto okna se nacházejí stejné funkce, jako u rychlého vyhledávaní (tři tlačítka vlevo dole). Krom nich je tu však ještě políčko, které umožňuje vyfiltrovat soubory ve kterých se bude vyhledávat.

Oproti standardnímu vyhledávání zde máme navíc možnost vybrat si, co se stane s výsledky vyhledávání (Result Options). Visual Studio Vám nabízí dvě různá okna, do kterých může výsledky nasypat. Můžete tak mít otevřené vedle sebe dvoje výsledky vyhledávání. V možnostech si můžete vybrat, zda se výsledky nasypou do okna Find Result 1 nebo 2. Dále je tu ještě možnost zjednodušit výsledky na pouhý seznam souborů, kde se daný výraz vyskytuje.

Když zatrhnete, že chcete vyhledávat s pomocí regulárního výrazu, vedle políčka pro vyhledávání se objeví tlačítko, které pomůže s tvorbou regulárního výrazu. Můžete si tam vybrat často používané výrazy a kombinovat je. Díky tomu můžete regulární výraz sestavit snadno i bez hlubších znalostí.

Krom toho je zde samozřejmě možnost komplexní nápovědy k regulárním výrazům. Ale o nápovědě si řekneme někdy příště.

V nabídce Look in se objevily další možnosti a to:

  • Current Project (vyhledávát v souborech aktuálního projektu)
  • Entire Solution (vyhledávat v souborech aktuálního řešení)
  • Current Project s možnosti vyhledávat i v externích souborech. O těch si také řekneme někdy příště.

S funkcemi vyhledávání úzce souvisí funkce nahrazování. Nahrazování funguje ve stejných režimech jako vyhledávání.

Rychlé nahrazování

Rychlé nahrazování lze vyvolat šipečkou dolů u rychlého vyhledávání nebo přes nabídku Edit > Find and Replace > Quick Replace.

Přidává pouze políčko, kterým se bude nahrazovat a tlačítka pro nahrazování postupné. To nám umožňuje ručně vybírat, co se nahradí a co ne. Pokud jsme si jistí, můžeme použít i tlačítko Replace All, které nahradí vše.

Nahrazování v souborech

Nahrazování v souborech nabízí stejné možnosti. Kromě nich je zde při volbě vyhledávání pomocí regulárních výrazů i možnost do nahrazovaného řetězce vložit část hledaného řetězce. Díky tomu je snadné přeformátovat určitý řetězec na nový.

Jako příklad si vytvoříme seznam tagů script, které se vkládají do webových stránek pro načítání JavaScriptových souborů. Seznam souborů je vyexportovaný seznam z příkazové řádky Windows v jeho klasickém formátu. Ve složce jsou i soubory TypeScritptu a jeho napojení na Visual Studio, které zpracovávat nechceme, proto musíme nejprve soubor vyfiltrovat. Otevřete si soubor files.txt v přiloženém souboru ve Visual Studiu.

Prvních několik řádků bylo vyexportováno automaticky. Jelikož jsou jedinečné, musíme je smazat ručně. Stejně tak jsou zbytečné řádky na konci. První dva DOSové soubory taky nechceme - smazat.

Vyfiltrování seznamu souborů provedeme nejsnáze pomocí regulárního výrazu. Doporučuji naučit se je, protože přepisovat milion řádku je fakt nuda a hlavně je to zbytečné.

Nejprve chceme smazat zbytečnosti na začátku řádku. Jelikož víme, že ten bordel okolo je přesně 36 znaků (toto číslo vidíme na stavovém řádku kde se ukazuje pozice kurzoru), můžeme použít jednoduchý regulární výraz.

.{36}

Výraz popisovat nebudu (a ani to není třeba), ale můžete se podívat na tento článek, kde jsou regulární výrazy popsány.

Visual studio oznámí úspěch a počet nahrazených výstyků (213).

Následně potřebujeme převést soubory s příponou js. To můžeme udělat opět pomocí regulárního výrazu. První část najde řádky

^(.*js)\r

a ty jsou následně upraveny na tvar:

<script src="$1"></script>

$1 zde zastupuje první závorku - tedy celý název souboru (.*) a přípona js. "\r" na konci zajistí, že tím bude končit a výraz nevybere soubory s příponou js.map nebo soubory, které sice nemají příponu js, ale mají js v názvu.

Třetí částí bude, že řádky, které teď začínají písmenem odstraníme. To zajistí následující regulární výraz.

^[a-z].*\r\n

Výsledkem bude soubor, který bude mít 48 řádků, na kterých budou tagy script se soubory s příponou js.

Soubor si můžete uložit jako v nabídce File > Save Files.txt As...

Gratuluji, již byste měli perfektně umět pracovat s nástroji vyhledat a nahradit ve Visual Studiu. V příštím díle se podíváme na možnosti editoru zdrojového kódu.


 

Stáhnout

Staženo 273x (12.03 kB)

 

  Aktivity (1)

Článek pro vás napsal Michal Žůrek (misaz)
Avatar
Autor se věnuje tvorbě aplikací pro počítače, mobilní telefony, mikroprocesory a tvorbě webových stránek a webových aplikací. Nejraději programuje ve Visual Basicu a TypeScript. Ovládá HTML, CSS, JavaScript, TypeScript, C# a Visual Basic.

Jak se ti líbí článek?
Celkem (5 hlasů) :
3.43.43.4 3.43.4


 


Miniatura
Předchozí článek
Visual Studio - Nastavení
Miniatura
Všechny články v sekci
Visual Studio
Miniatura
Následující článek
Visual Studio - Navigace v souborech

 

 

Komentáře

Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zatím nikdo nevložil komentář - buď první!