Liste over spesialsymboler i regex i PHP

Hvis du escape et vanlig symbol - vil ingenting alvorlig skje - det vil fortsatt betegne seg selv. Unntaket - tall, de kan ikke escapes.

Det oppstår ofte tvil om et gitt symbol er spesielt. Noen kommer til det punktet at de escape alle mistenkelige symboler i rekkefølge. Dette er imidlertid dårlig praksis (fôrer opp det regulære uttrykket med omvendte skråstreker).

Spesialsymboler er: $ ^ . * + ? \ / {} [] () |

Ikke-spesialsymboler er: @ : , ' " ; - _ = < > % # ~ ` & !

Задание 1

Gitt en streng:

php<?php
  $str = 'a.a aba aea';
?>

Skriv et regulært uttrykk som finner strengen 'a.a', uten å fange de andre.

Задание 2

Gitt en streng:

php<?php
  $str = '2+3 223 2223';
?>

Skriv et regulært uttrykk som finner strengen '2+3', uten å fange de andre.

Задание 3

Gitt en streng:

php<?php
  $str = '23 2+3 2++3 2+++3 345 567';
?>

Skriv et regulært uttrykk som finner strengene '2+3', '2++3', '2+++3', uten å fange de andre (+ kan være et hvilket som helst antall).

Задание 4

Gitt en streng:

php<?php
  $str = '23 2+3 2++3 2+++3 445 677';
?>

Skriv et regulært uttrykk som finner strengene '23', '2+3', '2++3', '2+++3', uten å fange de andre.

Задание 5

Gitt en streng:

php<?php
  $str = '*+ *q+ *qq+ *qqq+ *qqq qqq+';
?>

Skriv et regulært uttrykk som finner strengene '*q+', '*qq+', '*qqq+', uten å fange de andre.

Задание 6

Gitt en streng:

php<?php
  $str = '[abc] {abc} abc (abc) [abc]';
?>

Skriv et regulært uttrykk som finner strengene i hakeparenteser og erstatter dem med '!'.