Le symbole de l'accent circonflexe dans les ensembles des expressions régulières en PHP

Comme vous le savez, l'accent circonflexe à l'intérieur de [] crée une négation, lorsqu'il est écrit au début des crochets. Cela signifie que c'est un métacaractère à l'intérieur de ces crochets. Pour obtenir l'accent circonflexe en tant que caractère, il faut soit l'échapper, soit le retirer de la première position.

Exemple

Dans l'exemple suivant, le modèle de recherche est le suivant : le premier caractère est tout sauf 'd', puis deux lettres 'x'.

php<?php
  $str = 'axx bxx ^xx dxx';
  $res = preg_replace('#[^d]xx#', '!', $str);
?>

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

php'! ! ! dxx'

Exemple

Et maintenant, le modèle de recherche est le suivant : le premier caractère est 'd' ou '^', puis deux lettres 'x' :

php<?php
  $str = 'axx bxx ^xx dxx';
  $res = preg_replace('#[d^]xx#', '!', $str);
?>

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

php'axx bxx ! !'

Exemple

Il n'est pas nécessaire de retirer l'accent circonflexe de la première position, il suffit de l'échapper avec un antislash, et il représentera alors lui-même :

php<?php
  $str = 'axx bxx ^xx dxx';
  $res = preg_replace('#[\^d]xx#', '!', $str);
?>

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

php'axx bxx ! !'

Tâches pratiques

Задание 1

Soit une chaîne :

php<?php
  $str = '^xx axx ^zz bkk @ss';
?>

Écrivez une expression régulière qui trouvera les chaînes selon le modèle : accent circonflexe ou arobase, puis deux lettres latines.

Задание 2

Soit une chaîne :

php<?php
  $str = '^xx axx ^zz bkk @ss';
?>

Écrivez une expression régulière qui trouvera les chaînes selon le modèle : NI accent circonflexe NI arobase, puis deux lettres latines.

Задание 3

Soit une chaîne :

php<?php
  $str = '^xx axx ^zz bkk';
?>

Écrivez une expression régulière qui trouvera les chaînes selon le modèle : NON accent circonflexe, puis deux lettres latines.