Përmbysja e grupeve të karaktereve në regex

Duke përdorur shenjën ^ në fillim të kllapave katrore mund të përmbysni dëshirën. Kjo do të thotë, nëse, për shembull, komanda [ab] kërkon shkronjën 'a' ose 'b', atëherë komanda [^ab] do të kërkojë të gjithë karakteret, përveç 'a' dhe 'b'.

Shembull

Në këtë shembull modeli i kërkimit duket kështu: shkronja 'x', pastaj JO shkronja 'a', jo 'b' dhe jo 'c', më pas shkronja 'z':

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

Si rezultat në variabël do të shkruhet sa vijon:

php'xaz xbz xcz !'

Shembull

Në këtë shembull modeli i kërkimit duket kështu: shkronja 'x', pastaj JO shkronjë e vogël latine, më pas shkronja 'z':

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

Si rezultat në variabël do të shkruhet sa vijon:

php'xaz xbz ! !'

Detyra praktike

Задание 1

Shkruani një shprehje të rregullt që do të gjejë stringjet sipas modelit: shifra '1', pastaj karakter jo 'e' dhe jo 'x', shifra '2'.

Задание 2

Shkruani një shprehje të rregullt që do të gjejë stringjet sipas modelit: shkronja 'x', pastaj JO shifër nga 2 në 7, shkronja 'z'.

Задание 3

Shkruani një shprehje të rregullt që do të gjejë stringjet sipas modelit: shkronja 'x', pastaj JO shkronjë e madhe latine nga 1 e më shumë herë, shkronja 'z'.

Задание 4

Shkruani një shprehje të rregullt që do të gjejë stringjet sipas modelit: shkronja 'x', pastaj jo shkronjë e madhe dhe jo e vogël latine dhe jo shifër nga 1 në 5 nga 1 e më shumë herë, shkronja 'z'.