Téměř všechny metaznaky (včetně tečky .
, +
, *
a ?
kvantifikátory, kotva na konci řetězce $
, atd.) nemají ve znakových třídách žádný zvláštní význam, s několika významnými výjimkami:
- závorka
]
, ze zřejmých důvodů - stříška
^
, který se používá k negaci třídy znaků (např.:[^ab]
odpovídá libovolnému znaku alea
ab
). - pomlčka
-
, který se používá k označení rozsahu (např.:[0-9]
odpovídá libovolné číslici)
Ty však lze stále přidávat bez útěku, pokud jsou umístěny na strategických místech v rámci třídy postavy:
- závorku lze umístit hned za závorku, např.:
[]a]
odpovídá]
neboa
. - stříšku lze umístit kdekoli kromě za úvodní závorkou, např.:
[a^]
odpovídá^
neboa
- pomlčku lze umístit hned za počáteční nebo před uzavírací závorku, např.:
[-a]
a[a-]
oba odpovídajía
a-
.
Více informací lze nalézt v manuálové stránce POSIX regex
(díky Tomalak Geret'kal!)