Zoznam špeciálnych znakov v regulárnych výrazoch v PHP
Ak escapingujete obyčajný znak - nič sa nestane - bude stále predstavovať sám seba. Výnimka - čísla, tie sa nedajú escapovať.
Často vzniká pochybnosť, či je daný znak špeciálny. Niektorí ľudia až tak, že escapujú všetky podozrivé znaky postupne. Avšak, to je zlá prax (zaneřadí regulárny výraz spätnými lomkami).
Sú špeciálne znaky: $ ^ . * + ? \
/ {} [] () |
Nie sú špeciálne znaky: @ : , ' " ;
- _ = < > % # ~ ` & !
Daný reťazec:
<?php
$str = 'a.a aba aea';
?>
Napíšte regulárny výraz, ktorý nájde reťazec
'a.a', bez zachytenia ostatných.
Daný reťazec:
<?php
$str = '2+3 223 2223';
?>
Napíšte regulárny výraz, ktorý nájde reťazec
'2+3', bez zachytenia ostatných.
Daný reťazec:
<?php
$str = '23 2+3 2++3 2+++3 345 567';
?>
Napíšte regulárny výraz, ktorý nájde reťazce
'2+3', '2++3', '2+++3',
bez zachytenia ostatných (+ môže byť ľubovoľné
množstvo).
Daný reťazec:
<?php
$str = '23 2+3 2++3 2+++3 445 677';
?>
Napíšte regulárny výraz, ktorý nájde reťazce
'23', '2+3', '2++3',
'2+++3', bez zachytenia ostatných.
Daný reťazec:
<?php
$str = '*+ *q+ *qq+ *qqq+ *qqq qqq+';
?>
Napíšte regulárny výraz, ktorý nájde reťazce
'*q+', '*qq+', '*qqq+',
bez zachytenia ostatných.
Daný reťazec:
<?php
$str = '[abc] {abc} abc (abc) [abc]';
?>
Napíšte regulárny výraz, ktorý nájde reťazce
v hranatých zátvorkách a nahradí ich '!'.