Lijst van speciale tekens in regex in PHP
Als je een gewoon teken escaleert - er gebeurt niets ergs - het zal nog steeds zichzelf vertegenwoordigen. Uitzondering - cijfers, deze kunnen niet geëscaleerd worden.
Vaak bestaat er twijfel of een bepaald teken een speciaal teken is. Sommigen gaan zo ver dat ze alle verdachte tekens achter elkaar escaleren. Dit is echter een slechte praktijk (vervuilt de regex met backslashes).
Zijn speciale tekens: $ ^ . * + ? \
/ {} [] () |
Zijn geen speciale tekens: @ : , ' " ;
- _ = < > % # ~ ` & !
Gegeven een string:
<?php
$str = 'a.a aba aea';
?>
Schrijf een regex die de string
'a.a' vindt, zonder de andere te vangen.
Gegeven een string:
<?php
$str = '2+3 223 2223';
?>
Schrijf een regex die de string
'2+3' vindt, zonder de andere te vangen.
Gegeven een string:
<?php
$str = '23 2+3 2++3 2+++3 345 567';
?>
Schrijf een regex die de strings
'2+3', '2++3', '2+++3' vindt,
zonder de andere te vangen (+ kan elk aantal zijn).
Gegeven een string:
<?php
$str = '23 2+3 2++3 2+++3 445 677';
?>
Schrijf een regex die de strings
'23', '2+3', '2++3',
'2+++3' vindt, zonder de andere te vangen.
Gegeven een string:
<?php
$str = '*+ *q+ *qq+ *qqq+ *qqq qqq+';
?>
Schrijf een regex die de strings
'*q+', '*qq+', '*qqq+' vindt,
zonder de andere te vangen.
Gegeven een string:
<?php
$str = '[abc] {abc} abc (abc) [abc]';
?>
Schrijf een regex die de strings
in vierkante haken vindt en ze vervangt door '!'.