fixmint
CS

Regex v nástroji Najít a nahradit: přehledný průvodce se sedmi recepty

Autor: · · aktualizováno 8. listopadu 2026 · 4 min čtení

Regulární výraz, neboli regex, je vzor zapsaný pomocí několika symbolů. V nástroji [[tool:find-and-replace]] zapněte Regex a pole Hledat pak čte vzor místo prostého textu, takže tečka znamená libovolný znak, ne tečku. Většina užitečných vzorů potřebuje jen hrstku symbolů. Pro běžná slova Regex znovu vypněte, protože pak je každý symbol myšlen doslova.

Symboly, které potřebujete

SymbolCo odpovídá
.jeden libovolný znak kromě zalomení řádku
*položce před ním nula nebo vícekrát
+položce před ním jednou nebo vícekrát
?položce před ním jednou, nebo vůbec
[ ]jeden znak ze seznamu, například [aeiou] nebo [0-9]
\d \w \sčíslici; písmeno, číslici nebo podtržítko; mezeru, tabulátor nebo zalomení řádku
( )skupinu, kterou může Nahradit použít jako $1, $2 atd.
^ a $začátek a konec celého textu

Velká písmena třídu obracejí: \D je libovolný nečíselný znak a \S libovolný znak, který není mezera.

Dvě upozornění platí pro tento nástroj. Za prvé, \w odpovídá jen anglickým písmenům, číslicím a podtržítku. Pro písmena s diakritikou použijte \p{L}, které odpovídá písmenu z jakékoli abecedy. Za druhé, ^ a $ odpovídají začátku a konci celého textu, ne každého řádku. Níže uvedené recepty proto místo toho používají zalomení řádku uvnitř vzoru.

Skupiny a $1

Část vzoru dejte do závorek a nástroj si zapamatuje, co tato část odpovídala. V poli Nahradit je $1 první skupina, $2 druhá a $& celý nalezený úsek. Oficiální FAQ nástroje uvádí klasický příklad: když je v poli Hledat (\w+)@(\w+) a v poli Nahradit $2 at $1, text name@site se změní na site at name. Skupiny fungují jen se zapnutým Regexem. Když je vypnutý, $1 se zapíše doslova.

Vzor sestavte krok za krokem

Začněte přesným textem, který chcete najít, a části, které se mění, nahraďte symboly. Datum jako 2026-11-04 lze zapsat jako \d{4}-\d{2}-\d{2}, kde {4} znamená přesně čtyři položky před ním. Nejprve otestujte jednoduchou verzi a zpřesněte ji, až když zvýraznění ukáže, že zachytává příliš mnoho.

Chcete-li vidět, co vzor udělá sám o sobě, bez jakékoli změny, tester regulárních výrazů jej spustí proti ukázkovému textu a vypíše každou shodu.

Sedm receptů

Pro každý recept zapněte Regex. Nástroj před kopírováním zvýrazní shody a ukáže jejich počet, takže každý recept nejprve vyzkoušejte na kopii svého textu.

  1. Prohoďte jméno a příjmení. Najít (\w+) (\w+), Nahradit $2, $1. „Ada Lovelace“ se změní na „Lovelace, Ada“. U jmen s diakritikou použijte (\p{L}+) (\p{L}+). Funguje to jen pro dvouslovná jména.
  2. Odstraňte koncové mezery. Najít [ \t]+(?=\r?\n|$), Nahradit nechte prázdné. Odpovídá mezerám nebo tabulátorům, které stojí těsně před zalomením řádku nebo koncem textu. Lookahead (?=...) zalomení kontroluje, ale neodstraňuje, a \r? pokrývá konce řádků ve Windows. Oprava vloženého textu má volbu Oříznout každý řádek, která dělá totéž.
  3. Zredukujte dvojité mezery. Najít {2,}, což je mezera opakovaná dvakrát nebo vícekrát, Nahradit jednou mezerou. Dvě nebo více mezer se změní na jednu. Zmenší to i odsazení, proto ho u kódu přeskočte.
  4. Přidejte předponu ke každému řádku. Najít (.+), Nahradit - $1. Každý úsek jednoho nebo více znaků mezi zalomeními řádků je řádek a $1 ho drží. Prázdné řádky se přeskočí. Použijte tvar jeden a více, .+, ne tvar nula a více, protože ten odpovídá i prázdným místům mezi zalomeními, takže prázdné řádky získají zbloudilou pomlčku.
  5. Smažte prázdné řádky. Najít \n\s*(?=\n), Nahradit nechte prázdné. Shoda je zalomení řádku a případné bílé znaky za ním až k dalšímu zalomení, a to další zalomení se zachová. Odstraní se prázdné řádky, včetně těch, které obsahují jen mezery. Protože \s odpovídá i návratu vozíku, funguje to i s konci řádků ve Windows. Prázdný řádek úplně na začátku textu zůstane. Nástroj Odstranit duplicitní řádky má volbu Vynechat prázdné řádky, která dělá totéž jedním zaškrtnutím.
  6. Jedna položka na řádek. Najít ,[ ]*, Nahradit \n, a zaškrtněte Číst \n a \t v poli Nahradit. „jablka, hrušky, švestky“ se změní na tři řádky. Bez zaškrtnutí zůstane \n jako dva znaky, zpětné lomítko a n.
  7. Obalte každé číslo do hranatých závorek. Najít \d+, Nahradit [$&]. „Objednávka 42 a 7“ se změní na „Objednávka [42] a [7]“. $& je celý nalezený úsek, takže žádná skupina není potřeba.

Před kopírováním zkontrolujte

  • Počet shod a zvýraznění ukazují, co vzor zachytil. Pokud je zvýraznění špatně, bude špatný i výsledek.
  • Vzor s chybou ukáže pod poli hlášku „Neplatný vzor“. Opravte vzor a výsledek se aktualizuje.
  • Nechte pole Nahradit prázdné, pokud chcete smazat každou shodu. Zástupný text v poli to říká.
  • Rozlišování velikosti písmen je ve výchozím nastavení vypnuto, takže recepty shodují velká i malá písmena stejně. Zapněte je, když na velikosti záleží.
  • Chcete-li najít doslovnou tečku nebo závorku se zapnutým Regexem, předřaďte zpětné lomítko: \. nebo \[.

Okrajové případy

  • Hladové shody. .+ vezme, co jen může. Chcete-li se zastavit u první shody, přidejte otazník: .+?. Na to si dejte pozor u textu jako <b>.+</b>, který může přesáhnout přes několik značek.
  • Celá slova. U obyčejného slova je bezpečnější Regex vypnout. Volba Pouze celá slova zabrání tomu, aby se pes shodoval uvnitř pesimista, jak vysvětluje FAQ nástroje. Průvodce najít a nahradit obsahuje další příklady změn celých slov.
  • Původní text si ponechte. Výsledek se zobrazí ve vlastním poli a vstup zůstane beze změny. Až budete spokojeni, výsledek zkopírujte.

Přeloženo z Anglický originál s pomocí AI.

Komentáře

    Zatím žádné komentáře. Buďte první.

    Vaše hodnocení (nepovinné)

    Váš e-mail se nikde nezobrazuje ani neukládá.

    Obálka knihy How to Remain Valuable When Intelligence Becomes CheapHow to Remain Valuable When Intelligence Becomes Cheap

    224 stran o lidských, ekonomických a strategických výhodách, které zůstanou vzácné, i když umělá inteligence zvládne většinu kognitivních prací.

    $3.84Koupit na GumroaduAnglicky