Инвертирање на множества знаци во регуларни изрази
Со помош на каретката ^ на почетокот на квадратните
загради може да се инвертира посакуваното. Односно,
ако, на пример, командата [ab] бара
буква 'a' или 'b', тогаш командата
[^ab] ќе ги бара сите знаци, освен
'a' и 'b'.
Пример
Во овој пример шаблонот за пребарување изгледа вака:
буква 'x', потоа НЕ буква 'a',
не 'b' и не 'c', па буква
'z':
<?php
$str = 'xaz xbz xcz xez';
$res = preg_replace('#x[^abc]z#', '!', $str);
?>
Како резултат во променливата ќе се запише следново:
'xaz xbz xcz !'
Пример
Во овој пример шаблонот за пребарување изгледа вака:
буква 'x', потоа НЕ мала латинична
буква, па буква 'z':
<?php
$str = 'xaz xbz x1z xCz';
$res = preg_replace('#x[^a-z]z#', '!', $str);
?>
Како резултат во променливата ќе се запише следново:
'xaz xbz ! !'
Практични задачи
Напишете регуларен израз што ќе ги најде низите
според шаблонот: цифра '1', потоа знак
не 'e' и не 'x', цифра '2'.
Напишете регуларен израз што ќе ги најде низите
според шаблонот: буква 'x', потоа НЕ
цифра од 2 до 7, буква 'z'.
Напишете регуларен израз што ќе ги најде низите
според шаблонот: буква 'x', потоа НЕ
голема латинична буква од 1 и повеќе
пати, буква 'z'.
Напишете регуларен израз што ќе ги најде низите
според шаблонот: буква 'x', потоа не
голема и не мала латинична буква и не цифра
од 1 до 5 од 1 и повеќе
пати, буква 'z'.