Simbolių rinkinių invertavimas reguliariosiose išraiškose
Naudojant šlepetę '^' kvadratinių
skliaustų pradžioje galima invertuoti norimą. Tai yra,
jei, pavyzdžiui, komanda [ab] ieško
raidės 'a' arba 'b', tai komanda
[^ab] ieškos visų simbolių, išskyrus
'a' ir 'b'.
Pavyzdys
Šiame pavyzdyje paieškos šablonas atrodo taip:
raidė 'x', tada NE raidė 'a',
ne 'b' ir ne 'c', paskui raidė
'z':
let str = 'xaz xbz xcz xez';
let res = str.replace(/x[^abc]z/g, '!');
Dėl to į kintamąjį bus įrašyta taip:
'xax xbx xcx !'
Pavyzdys
Šiame pavyzdyje paieškos šablonas atrodo taip:
raidė 'x', tada NE mažoji lotyniška
raidė, paskui raidė 'z':
let str = 'xaz xbz x1z xCz';
let res = str.replace(/x[^a-z]z/g, '!');
Dėl to į kintamąjį bus įrašyta taip:
'xaz xbz ! !'
Praktinės užduotys
Parašykite reguliariąją išraišką, kuri ras eilutes
pagal šabloną: skaitmuo '1', tada simbolis
ne 'e' ir ne 'x', skaitmuo '2'.
Parašykite reguliariąją išraišką, kuri ras eilutes
pagal šabloną: raidė 'x', tada NE
skaitmuo nuo 2 iki 7, raidė 'z'.
Parašykite reguliariąją išraišką, kuri ras eilutes
pagal šabloną: raidė 'x', tada NE
didelė lotyniška raidė nuo 1 ir daugiau
kartų, raidė 'z'.
Parašykite reguliariąją išraišką, kuri ras eilutes
pagal šabloną: raidė 'x', tada NE
didelė ar mažoji lotyniška raidė ir ne skaitmuo
nuo 1 iki 5 nuo 1 ir daugiau
kartų, raidė 'z'.