Спецсімвалы ўнутры квадратных дужак у PHP

Спецсімвалы ўнутры [] становяцца звычайнымі сімваламі. Гэта значыць, што іх не трэба экранаваць адваротным слешам.

Прыклад

У гэтым прыкладзе шаблон пошуку выглядае так: паміж іксамі любая літара 'a', 'b', 'c', альбо кропка:

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

У выніку ў зменную запішацца наступнае:

php'! ! ! xdx ! x@x'

Прыклад

У гэтым прыкладзе шаблон пошуку выглядае так: паміж іксамі любая маленькая лацінская літара альбо кропка:

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

У выніку ў зменную запішацца наступнае:

php'! ! ! x@x'

Практычныя задачы

Задание 1

Дадзены радок:

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

Напішыце рэгулярку, якая знойдзе радкі 'a.a', 'a+a', 'a*a', не закрануўшы астатніх.

Задание 2

Дадзены радок:

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

Напішыце рэгулярку, якая знойдзе радкі па шаблоне: літара 'x', потым НЕ кропка, НЕ сабака, і НЕ долар, а потым літара 'z'.