Závorky
Hranaté závorky []
Hranaté závorky pomohou s výběrem takového textu, ve kterém se vyskytuje jeden ze skupiny znaků, kterou zadáme, tedy například:
- Chceme najít všechny produkty, které mají v názvu nějaké číslo, použijeme regulární výraz [0 – 9]
(alternativou je potom použití výrazu \d, který v regulárních výrazech představuje jakoukoli číslici), tedy: PRODUCTNAME ~obsahuje reg.výraz [0 – 9] nebo
PRODUCTNAME ~obsahuje reg.výraz \d - Hledáme všechny produkty, které mají v názvu dvouciferné číslo, použijeme regulární výraz [0 – 9][0 – 9]
(nebo to samé zajistí použití: \d\d) - Chceme najít všechny produkty, které mají v názvu nějaké písmeno z následující množiny písmen: b, f, l, m, použijeme regulární výraz [bflm]
Kulaté závorky ()
Kulaté závorky umožňují vyhledávat v řetězci různé tvary jednoho slova, přičemž vyhledají všechny části řetězce, ve kterých se vyskytuje buď část před závorkou nebo celý výraz.
- Chceme najít všechny produkty, které mají v názvu pneu nebo pneumatika, použijeme regulární výraz pneu(matika)? (vysvětlení znaku ? jsme uvedli v minulém článku)
Složené závorky {}
Složené závorky patří mezi kvantifikátory – určují tedy, kolikrát se dané písmeno nebo řetězec písmen v hledaném textu vyskytuje. Například:
- Chceme najít všechny produkty, které mají v názvu písmeno A třikrát za sebou, použijeme regulární výraz A{3}
- Chceme najít všechny produkty, které mají v názvu písmeno A nejméně jednou, maximálně dvakrát za sebou, použijeme regulární výraz A{1,2}
- Chceme najít všechny produkty, které mají v názvu písmeno A dva a vícekrát za sebou, použijeme regulární výraz A{2,} - například u módy tak můžeme vytvořit výběr pro největší velikosti (XXL a větší)
Hraniční značky
Stříška ^
Pomocí této značky vyhledáváme na začátku řetězce:
- Chceme najít všechny produkty, jejichž název začíná číslem (tj. prvním znakem v názvu produktu je číslo), použijeme regulární výraz ^[0 – 9] nebo ^\d
- Chceme najít všechny produkty, jejichž název začíná mezerou (tj. prvním znakem v názvu produktu je mezera), použijeme regulární výraz ^\s
- Chceme najít všechny produkty, jejichž název začíná slovem Novinka (tj. v názvu produktu je hned na začátku slovo “Novinka”), použijeme regulární výraz ^Novinka
Dolar $
S pomocí “dolaru” vyhledáváme požadované znaky na konci řetězce:
- Chceme najít všechny produkty, jejichž název končí číslem (tj. posledním znakem v názvu produktu je číslo), použijeme regulární výraz [0 – 9]$ nebo \d$
- Chceme najít všechny produkty, jejichž název končí mezerou (tj. posledním znakem v názvu produktu je mezera), použijeme regulární výraz \s$
- Chceme najít všechny produkty, jejichž název končí slovem Novinka (tj. v názvu produktu je úplně na konci “Novinka”), použijeme regulární výraz Novinka$
Tip: Dolar na klávesnici napíšete např. přes klávesovou zkratku AltGr a ů, více způsobů najdete pod tímto odkazem.
Svislítko |
Tato značka funguje podobně jako operátor OR, česky bychom řekli “nebo” — vyhledá tedy takové položky, ve kterých se vyskytuje jeden nebo druhý (třetí, čtvrtý, pátý…) ze zadaných výrazů, tedy:
- pokud chceme najít všechny produkty, jejichž název obsahuje velikost nebo objem (tj. kdekoliv v názvu produktu bude jeden nebo druhý hledaný výraz), použijeme regulární výraz Velikost|Objem
Znak s se zpětným lomítkem \s
Pomocí tohoto znaku dokážeme vyhledávat, a následně třeba odstranit mezery (a další bílé znaky jakou jsou tabulátory nebo nezalomitelné mezery), může se nám tedy hodit při:
- Hledání všech produktů, jejichž název obsahuje konkrétní víceslovný text: “Objem<mezera>100<mezera>ml”. K tomu použijeme regulární výraz Objem\s100\sml
- Odhalování právě dvou mezer vedle sebe, kdy použijeme regulární výraz \s\s
K vyhledávání různého počtu mezer je potom efektivnější použít výraz s kvantifikátorem plus (viz předchozí článek) \s+, který odhalí minimálně jednu a maximálně nekonečno mezer za sebou.
Tip: V Mergadu u regulárních výrazů nezáleží na tom, zda hledáte text zadaný malými nebo velkými písmeny. Když budete hledat slovo “Velikost”, najde se: “Velikost”, “velikost” nebo třeba i “VeLiKoSt”. V dalším díle seriálu se už můžete těšit na konkrétní kombinace a řešení složitějších výběrů v Mergadu pomocí regulárních výrazů.