⊗jsSpREChS 103 of 294 menu

Sümbolikomplektid JavaScripti regulaaravaldistes

Sümbolirühmad \d ja \w ei ole väga paindlikud. Isegi nii lihtne ülesanne nagu leida kõik tähed, kuid mitte numbrid - ei saa nendega lahendatud. Selliste ülesannete jaoks tuleks kasutada nurksulge, mis esindavad 'või' operatsiooni.

Nurksulud asendavad ühe sümboli, ükskõik millise loetletutest seespool. Näiteks nii: /x[abc]x/ - me ütleme, et servades peavad olema ikstähed, ja seespool - üks sümbol: kas 'a', 'b', või 'c'.

Pärast nurksulge saab kirjutada kordusoperaatoreid. Näiteks nii: /x[abc]+x/ - me ütleme, et ikside vahel võib olla suvaline arv sümboleid 'a', 'b' ja 'c' - suvalistes kombinatsioonides.

Võib mitte ainult loetleda sümboleid, vaid luua sümbolirühmi, kirjutades kahe sümboli vahele kriipsu. Näiteks nii: [a-d] - saame kõik sümbolid alates 'a' kuni 'd'.

Vaatame näidete varal.

Näide

Selles näites näeb otsimismust välja selline: ikside vahel suvaline täht alates 'a' kuni 'z':

let str = 'xax xbx xcx x@x'; let res = str.replace(/x[a-z]x/g, '!');

Tulemusena kirjutatakse muutujasse järgmine:

'! ! ! x@x'

Näide

Selles näites näeb otsimismust välja selline: ikside vahel suvaline täht alates 'a' kuni 'k':

let str = 'xax xbx xmx x@x'; let res = str.replace(/x[a-k]x/g, '!');

Tulemusena kirjutatakse muutujasse järgmine:

'! ! xmx x@x'

Näide

Selles näites näeb otsimismust välja selline: ikside vahel suvaline täht alates 'A' kuni 'Z':

let str = 'xax xBx xcx x@x'; let res = str.replace(/x[A-Z]x/g, '!');

Tulemusena kirjutatakse muutujasse järgmine:

'xax ! xcx x@x'

Näide

Selles näites näeb otsimismust välja selline: ikside vahel suvaline number alates 0 kuni 9:

let str = 'xax x1x x3x x5x x@x'; let res = str.replace(/x[0-9]x/g, '!');

Tulemusena kirjutatakse muutujasse järgmine:

'xax ! ! ! x@x'

Näide

Selles näites näeb otsimismust välja selline: ikside vahel suvaline number alates 3 kuni 7:

let str = 'xax x1x x3x x5x x@x'; let res = str.replace(/x[3-7]x/g, '!');

Tulemusena kirjutatakse muutujasse järgmine:

'xax x1x ! ! x@x'

Näide

Selles näites näeb otsimismust välja selline: ikside vahel suvaline täht alates 'a' kuni 'z' või number alates 1 kuni 9:

let str = 'xax x1x x3x x5x x@x'; let res = str.replace(/x[a-z1-9]x/g, '!');

Tulemusena kirjutatakse muutujasse järgmine:

'! ! ! ! x@x'

Näide

Selles näites näeb otsimismust välja selline: ikside vahel suvaline täht alates 'a' kuni 'z' või täht alates 'A' kuni 'Z':

let str = 'xax xBx xcx x5x x@x'; let res = str.replace(/x[a-zA-Z]x/g, '!');

Tulemusena kirjutatakse muutujasse järgmine:

'! ! ! x5x x@x'

Näide

Selles näites näeb otsimismust välja selline: ikside vahel suvaline täht alates 'a' kuni 'z' või numbrid 1, 2:

let str = 'xax xbx x1x x2x x3x'; let res = str.replace(/x[a-z12]x/g, '!');

Tulemusena kirjutatakse muutujasse järgmine:

'! ! ! ! x3x'

Näide

Selles näites näeb otsimismust välja selline: ikside vahel tähed alates 'a' kuni 'z' koguses alates 1 ja rohkem:

let str = 'xx xabesx xaadx x123x xa3x'; let res = str.replace(/x[a-z]+x/g, '!');

Tulemusena kirjutatakse muutujasse järgmine:

'xx ! ! ! x123x xa3x'

Näide

Teeme nii, et tähtede arv võiks olla ka null:

let str = 'xx xabesx xaadx x123x xa3x'; let res = str.replace(/x[a-z]*x/g, '!');

Tulemusena kirjutatakse muutujasse järgmine:

'! ! ! ! x123x xa3x'

Praktilised ülesanded

Antud on string:

let str = 'aba aea aca aza axa';

Kirjutage regulaaravaldis, mis leiab järgmise mustri järgi: servades on tähed 'a', ja nende vahel - täht 'b', 'e' või 'x'.

Antud on string:

let str = 'a1a a3a a7a a9a aba';

Kirjutage regulaaravaldis, mis leiab järgmise mustri järgi: servades on tähed 'a', ja nende vahel - number alates 3-st kuni 6-ni.

Antud on string:

let str = 'aba aea afa aha aga';

Kirjutage regulaaravaldis, mis leiab järgmise mustri järgi: servades on tähed 'a', ja nende vahel - täht a-st kuni g-ni.

Antud on string:

let str = 'aba aea afa aha aga';

Kirjutage regulaaravaldis, mis leiab järgmise mustri järgi: servades on tähed 'a', ja nende vahel - täht a-st kuni f-ni ja j-st kuni z-ni.

Antud on string:

let str = 'aAa aea aEa aJa a3a';

Kirjutage regulaaravaldis, mis leiab järgmise mustri järgi: servades on tähed 'a', ja nende vahel - täht a-st kuni f-ni ja A-st kuni D-ni.

Antud on string:

let str = 'aAXa aeffa aGha aza ax23a a3sSa';

Kirjutage regulaaravaldis, mis leiab järgmise mustri järgi: servades on tähed 'a', ja nende vahel - väikesed ladina tähed, puudutamata teisi.

Antud on string:

let str = 'aAXa aeffa aGha aza ax23a a3sSa';

Kirjutage regulaaravaldis, mis leiab järgmise mustri järgi: servades on tähed 'a', ja nende vahel - väikesed ja suured ladina tähed, puudutamata teisi.

Antud on string:

let str = 'aAXa aeffa aGha aza ax23a a3sSa';

Kirjutage regulaaravaldis, mis leiab järgmise mustri järgi: servades on tähed 'a', ja nende vahel - väikesed ladina tähed ja numbrid, puudutamata teisi.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu