Simbolių rinkinių invertavimas reguliariosiose išraiškose

Naudojant šlapelių ^ 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':

php<?php
  $str = 'xaz xbz xcz xez';
  $res = preg_replace('#x[^abc]z#', '!', $str);
?>

Dėlto į kintamąjį bus įrašyta taip:

php'xaz xbz xcz !'

Pavyzdys

Šiame pavyzdyje paieškos šablonas atrodo taip: raidė 'x', tada NE mažoji lotyniška raidė, paskui raidė 'z':

php<?php
  $str = 'xaz xbz x1z xCz';
  $res = preg_replace('#x[^a-z]z#', '!', $str);
?>

Dėlto į kintamąjį bus įrašyta taip:

php'xaz xbz ! !'

Praktinės užduotys

Задание 1

Parašykite reguliariąją išraišką, kuri ras eilutes pagal šabloną: skaitmuo '1', tada simbolis ne 'e' ir ne 'x', skaitmuo '2'.

Задание 2

Parašykite reguliariąją išraišką, kuri ras eilutes pagal šabloną: raidė 'x', tada NE skaitmuo nuo 2 iki 7, raidė 'z'.

Задание 3

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'.

Задание 4

Parašykite reguliariąją išraišką, kuri ras eilutes pagal šabloną: raidė 'x', tada ne didelė ir ne mažoji lotyniška raidė ir ne skaitmuo nuo 1 iki 5 nuo 1 ir daugiau kartų, raidė 'z'.