Requlyar ifadələrdə inversiya

Kvadrat mötərizələrin əvvəlindəki şlapka ^ ilə istəni inversiya etmək olar. Yəni, məsələn, əgər [ab] əmri 'a' və ya 'b' hərfini axtarırsa, onda [^ab] əmri 'a' və 'b' istisna olmaqla, bütün simvolları axtarar.

Nümunə

Bu nümunədə axtarış şablonu belədir: 'x' hərfi, sonra 'a' hərfi OLMAYAN, 'b' OLMAYAN və 'c' OLMAYAN, daha sonra 'z' hərfi:

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

Nəticədə dəyişənə aşağıdakı yazılacaq:

php'xaz xbz xcz !'

Nümunə

Bu nümunədə axtarış şablonu belədir: 'x' hərfi, sonra kiçik latın hərfi OLMAYAN, sonra 'z' hərfi:

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

Nəticədə dəyişənə aşağıdakı yazılacaq:

php'xaz xbz ! !'

Praktiki tapşırıqlar

Задание 1

Şablona uyğun sətirləri tapan requlyar ifadə yazın: '1' rəqəmi, sonra 'e' və 'x' OLMAYAN simvol, '2' rəqəmi.

Задание 2

Şablona uyğun sətirləri tapan requlyar ifadə yazın: 'x' hərfi, sonra 2 ilə 7 arasında rəqəm OLMAYAN, 'z' hərfi.

Задание 3

Şablona uyğun sətirləri tapan requlyar ifadə yazın: 'x' hərfi, sonra böyük latın hərfi OLMAYAN (1 və ya daha çox dəfə), 'z' hərfi.

Задание 4

Şablona uyğun sətirləri tapan requlyar ifadə yazın: 'x' hərfi, sonra böyük latın hərfi OLMAYAN, kiçik latın hərfi OLMAYAN və 1 ilə 5 arasında rəqəm OLMAYAN (1 və ya daha çox dəfə), 'z' hərfi.