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: @ : , ' " ;
- _ = < > % # ~ ` & !
Gitt en streng:
<?php
$str = 'a.a aba aea';
?>
Skriv et regulært uttrykk som finner strengen
'a.a', uten å fange de andre.
Gitt en streng:
<?php
$str = '2+3 223 2223';
?>
Skriv et regulært uttrykk som finner strengen
'2+3', uten å fange de andre.
Gitt en streng:
<?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).
Gitt en streng:
<?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.
Gitt en streng:
<?php
$str = '*+ *q+ *qq+ *qqq+ *qqq qqq+';
?>
Skriv et regulært uttrykk som finner strengene
'*q+', '*qq+', '*qqq+',
uten å fange de andre.
Gitt en streng:
<?php
$str = '[abc] {abc} abc (abc) [abc]';
?>
Skriv et regulært uttrykk som finner strengene
i hakeparenteser og erstatter dem med '!'.