Lista simbolurilor speciale în expresiile regulate în PHP
Dacă escapi un simbol obișnuit - nu se va întâmpla nimic rău - acesta va însemna în continuare el însuși. Excepție - cifrele, acestea nu pot fi escapare.
Deseori apare îndoiala dacă un anumit simbol este special. Unii ajung să escapeze toate simbolurile suspecte la rând. Cu toate acestea, aceasta este o practică proastă (încarcă expresia regulată cu backslash-uri).
Sunt simboluri speciale: $ ^ . * + ? \
/ {} [] () |
Nu sunt simboluri speciale: @ : , ' " ;
- _ = < > % # ~ ` & !
Este dat șirul:
<?php
$str = 'a.a aba aea';
?>
Scrieți o expresie regulată care va găsi șirul
'a.a', fără a captura celelalte.
Este dat șirul:
<?php
$str = '2+3 223 2223';
?>
Scrieți o expresie regulată care va găsi șirul
'2+3', fără a captura celelalte.
Este dat șirul:
<?php
$str = '23 2+3 2++3 2+++3 345 567';
?>
Scrieți o expresie regulată care va găsi șirurile
'2+3', '2++3', '2+++3',
fără a captura celelalte (+ poate fi orice
număr).
Este dat șirul:
<?php
$str = '23 2+3 2++3 2+++3 445 677';
?>
Scrieți o expresie regulată care va găsi șirurile
'23', '2+3', '2++3',
'2+++3', fără a captura celelalte.
Este dat șirul:
<?php
$str = '*+ *q+ *qq+ *qqq+ *qqq qqq+';
?>
Scrieți o expresie regulată care va găsi șirurile
'*q+', '*qq+', '*qqq+',
fără a captura celelalte.
Este dat șirul:
<?php
$str = '[abc] {abc} abc (abc) [abc]';
?>
Scrieți o expresie regulată care va găsi șirurile
în paranteze pătrate și le va înlocui cu '!'.