⊗jsSpRECB 100 of 294 menu

Složené závorky v regulárních výrazech JavaScriptu

Operátory '+', '*', '?' jsou užitečné, ale nelze jimi určit konkrétní počet opakování. V tomto případě vám pomůže operátor {}.

Funguje následovně: {5} - pět opakování, {2,5} – opakuje se dvakrát až pětkrát (včetně), {2,} - opakuje se dvakrát a vícekrát. Všimněte si, že varianta {,2} - neexistuje. Podívejte se na příklady:

Příklad

V tomto příkladu vypadá vyhledávací vzor takto: písmeno 'x', písmeno 'a' jednou nebo dvakrát, písmeno 'x':

let str = 'xx xax xaax xaaax'; let res = str.replace(/xa{1,2}x/g, '!');

Výsledek zapsaný do proměnné bude následující:

'xx ! ! xaaax'

Příklad

V tomto příkladu vypadá vyhledávací vzor takto: písmeno 'x', písmeno 'a' dvakrát a vícekrát, písmeno 'x':

let str = 'xx xax xaax xaaax'; let res = str.replace(/xa{2,}x/g, '!');

Výsledek zapsaný do proměnné bude následující:

'xx xax ! !'

Příklad

V tomto příkladu vypadá vyhledávací vzor takto: písmeno 'x', písmeno 'a' třikrát, písmeno 'x':

let str = 'xx xax xaax xaaax'; let res = str.replace(/xa{3}x/g, '!');

Výsledek zapsaný do proměnné bude následující:

'xx xax xaax !'

Příklad

V tomto příkladu vypadá vyhledávací vzor takto: písmeno 'a' desetkrát:

let str = 'aaa aaaaaaaaaa aaa'; let res = str.replace(/a{10}/g, '!');

Výsledek zapsaný do proměnné bude následující:

'aaa ! aaa'

Příklad

V tomto příkladu autor kódu zamýšlel tento vzor: písmeno 'x', písmeno 'a' třikrát a méněkrát, písmeno 'x', ale bohužel toto - {,3} - nefunguje. Je třeba uvést explicitně:

let str = 'xx xax xaax xaaax'; let res = str.replace(/xa{1,3}x/g, '!');

Výsledek zapsaný do proměnné bude následující:

'xx ! ! !'

Příklad

Nula je také povolena:

let str = 'xx xax xaax xaaax'; let res = str.replace(/xa{0,3}x/g, '!');

Výsledek zapsaný do proměnné bude následující:

'! ! ! !'

Praktické úlohy

Je dán řetězec:

let str = 'aa aba abba abbba abbbba abbbbba';

Napište regulární výraz, který najde řetězce 'abba', 'abbba', 'abbbba' a pouze je.

Je dán řetězec:

let str = 'aa aba abba abbba abbbba abbbbba';

Napište regulární výraz, který najde řetězce tvaru 'aba', ve kterých se 'b' vyskytuje méně než 3-krát (včetně).

Je dán řetězec:

let str = 'aa aba abba abbba abbbba abbbbba';

Napište regulární výraz, který najde řetězce tvaru 'aba', ve kterých se 'b' vyskytuje více než 4-krát (včetně).

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout