Il simbolo dell'accento circonflesso all'interno degli insiemi nelle espressioni regolari PHP

Come sapete, l'accento circonflesso all'interno di [] crea una negazione, quando è scritto all'inizio delle parentesi. Ciò significa che è un carattere speciale all'interno di queste parentesi. Per ottenere l'accento circonflesso come carattere, è necessario o escaparlo, o spostarlo dalla prima posizione.

Esempio

Nel seguente esempio il modello di ricerca è questo: il primo carattere è tutto tranne 'd', poi due lettere 'x'.

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

Di conseguenza, nella variabile verrà memorizzato quanto segue:

php'! ! ! dxx'

Esempio

E ora il modello di ricerca è questo: il primo carattere - è 'd' o '^', poi due lettere 'x':

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

Di conseguenza, nella variabile verrà memorizzato quanto segue:

php'axx bxx ! !'

Esempio

Puoi non spostare l'accento circonflesso dalla prima posizione, ma semplicemente escaparlo usando la barra rovesciata, e significherà se stesso:

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

Di conseguenza, nella variabile verrà memorizzato quanto segue:

php'axx bxx ! !'

Problemi pratici

Задание 1

Data una stringa:

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

Scrivi un'espressione regolare che trovi le stringhe secondo il modello: accento circonflesso o chiocciola, e poi due lettere latine.

Задание 2

Data una stringa:

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

Scrivi un'espressione regolare che trovi le stringhe secondo il modello: NON accento circonflesso e non chiocciola, e poi due lettere latine.

Задание 3

Data una stringa:

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

Scrivi un'espressione regolare che trovi le stringhe secondo il modello: NON accento circonflesso, e poi due lettere latine.