Specijalni karakteri unutar uglastih zagrada u PHP-u

Specijalni karakteri unutar [] postaju obični karakteri. To znači da ih ne treba da se escape-uje obrnutom kosom crtom.

Primer

U ovom primeru šablon za pretragu izgleda ovako: između iksa bilo koje slovo 'a', 'b', 'c', ili tačka:

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

Kao rezultat u promenljivu će biti upisano sledeće:

php'! ! ! xdx ! x@x'

Primer

U ovom primeru šablon za pretragu izgleda ovako: između iksa bilo koje malo latinično slovo ili tačka:

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

Kao rezultat u promenljivu će biti upisano sledeće:

php'! ! ! x@x'

Praktični zadaci

Задание 1

Data je niska:

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

Napišite regularni izraz koji će pronaći niske 'a.a', 'a+a', 'a*a', ne dovodeći u pitanje ostale.

Задание 2

Data je niska:

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

Napišite regularni izraz koji će pronaći niske prema šablonu: slovo 'x', zatim NIJE tačka, NIJE znak @, i NIJE znak za dolar, a onda slovo 'z'.