Specialtegn inden for kantede parenteser i PHP

Specialtegn inden for [] bliver til almindelige tegn. Det betyder, at de ikke behøver at escapes med omvendt skråstreg.

Eksempel

I dette eksempel ser søgemønsteret sådan ud: mellem x'er ethvert bogstav 'a', 'b', 'c', eller punktum:

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

Som resultat vil følgende blive skrevet i variablen:

php'! ! ! xdx ! x@x'

Eksempel

I dette eksempel ser søgemønsteret sådan ud: mellem x'er ethvert lille latinsk bogstav eller punktum:

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

Som resultat vil følgende blive skrevet i variablen:

php'! ! ! x@x'

Praktiske opgaver

Задание 1

Givet en streng:

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

Skriv et regulært udtryk, der finder strengene 'a.a', 'a+a', 'a*a', uden at berøre de andre.

Задание 2

Givet en streng:

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

Skriv et regulært udtryk, der finder strengene efter mønsteret: bogstavet 'x', derefter IKKE punktum, IKKE at-tegn, og IKKE dollar-tegn, og derefter bogstavet 'z'.