Caractères spéciaux entre crochets en PHP

Les caractères spéciaux à l'intérieur de [] deviennent des caractères ordinaires. Cela signifie qu'il n'est pas nécessaire de les échapper avec une barre oblique inversée.

Exemple

Dans cet exemple, le modèle de recherche est le suivant : entre les x, n'importe quelle lettre 'a', 'b', 'c', ou un point :

php<?php
  $str = 'xax xbx xcx xdx x.x x@x';
  $res = preg_replace('#x[abc.]x#', '!', $str);
?>

En conséquence, la variable contiendra ce qui suit :

php'! ! ! xdx ! x@x'

Exemple

Dans cet exemple, le modèle de recherche est le suivant : entre les x, n'importe quelle lettre minuscule latine ou un point :

php<?php
  $str = 'xax xbx xcx x@x';
  $res = preg_replace('#x[a-z.]x#', '!', $str);
?>

En conséquence, la variable contiendra ce qui suit :

php'! ! ! x@x'

Tâches pratiques

Задание 1

Soit une chaîne :

php<?php
  $str = 'aba aea aca aza axa a.a a+a a*a';
?>

Écrivez une expression régulière qui trouvera les chaînes 'a.a', 'a+a', 'a*a', sans affecter les autres.

Задание 2

Soit une chaîne :

php<?php
  $str = 'xaz x.z x3z x@z x$z xrz';
?>

Écrivez une expression régulière qui trouvera les chaînes selon le modèle : la lettre 'x', puis NI point, NI arobase, ET NI dollar, puis la lettre 'z'.