Kablys simbolis aibėse reguliariosiose išraiškose JavaScript
Kaip žinote, kablys [ ] viduje
sukuria neigimą, kai yra parašytas skliaustų
pradžioje.
Tai reiškia, kad jis yra specialus simbolis
šių skliaustų viduje. Norint gauti kablį kaip simbolį,
reikia arba jį ekranuoti, arba perkelti iš
pirmosios pozicijos.
Pavyzdys
Šiame pavyzdyje paieškos šablonas yra toks:
pirmasis simbolis yra viskas, išskyrus 'd',
po to dvi raidės 'x'.
let str = 'axx bxx ^xx dxx';
let res = str.replace(/[^d]xx/g, '!');
Rezultate į kintamąjį bus įrašyta tai:
'! ! ! dxx'
Pavyzdys
O dabar paieškos šablonas yra toks: pirmasis simbolis
- yra 'd' arba '^', po to
dvi raidės 'x':
let str = 'axx bxx ^xx dxx';
let res = str.replace(/[d^]xx/g, '!');
Rezultate į kintamąjį bus įrašyta tai:
'axx bxx ! !'
Pavyzdys
Galima neperkelti kablio iš pirmosios pozicijos, o tiesiog jį ekranuoti naudojant atvirkštinį brūkšnį, ir jis reikš save patį:
let str = 'axx bxx ^xx dxx';
let res = str.replace(/[\^d]xx/g, '!');
Rezultate į kintamąjį bus įrašyta tai:
'axx bxx ! !'
Praktinės užduotys
Duota eilutė:
let str = '^xx axx ^zz bkk @ss';
Parašykite reguliariąją išraišką, kuri ras eilutes pagal šabloną: kablys arba eta, o po to dvi lotyniškos raidės.
Duota eilutė:
let str = '^xx axx ^zz bkk @ss';
Parašykite reguliariąją išraišką, kuri ras eilutes pagal šabloną: NE kablys ir ne eta, o po to dvi lotyniškos raidės.
Duota eilutė:
let str = '^xx axx ^zz bkk';
Parašykite reguliariąją išraišką, kuri ras eilutes pagal šabloną: ne kablys ir ne tarpas, o po to dvi lotyniškos raidės.