Inverteren van karaktersets in reguliere expressies

Met het dakje ^ aan het begin van vierkante haken kun je het gewenste inverteren. Dat wil zeggen, als bijvoorbeeld het commando [ab] zoekt naar de letter 'a' of 'b', dan zal het commando [^ab] alle karakters zoeken, behalve 'a' en 'b'.

Voorbeeld

In dit voorbeeld ziet het zoekpatroon er als volgt uit: letter 'x', dan GEEN letter 'a', geen 'b' en geen 'c', vervolgens letter 'z':

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

Als resultaat wordt het volgende in de variabele geschreven:

php'xaz xbz xcz !'

Voorbeeld

In dit voorbeeld ziet het zoekpatroon er als volgt uit: letter 'x', dan GEEN kleine Latijnse letter, vervolgens letter 'z':

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

Als resultaat wordt het volgende in de variabele geschreven:

php'xaz xbz ! !'

Praktische opdrachten

Задание 1

Schrijf een reguliere expressie die strings vindt volgens het patroon: cijfer '1', dan karakter geen 'e' en geen 'x', cijfer '2'.

Задание 2

Schrijf een reguliere expressie die strings vindt volgens het patroon: letter 'x', dan GEEN cijfer van 2 tot 7, letter 'z'.

Задание 3

Schrijf een reguliere expressie die strings vindt volgens het patroon: letter 'x', dan GEEN hoofdletter Latijns letter van 1 en meer keer, letter 'z'.

Задание 4

Schrijf een reguliere expressie die strings vindt volgens het patroon: letter 'x', dan geen hoofdletter en geen kleine letter Latijns en geen cijfer van 1 tot 5 van 1 en meer keer, letter 'z'.