Quasi tutti i metacaratteri (incluso il punto . , il + , * e ? quantificatori, l'ancora di fine stringa $ , ecc.) non hanno un significato speciale nelle classi di caratteri, con alcune eccezioni degne di nota:
- parentesi chiusa
], per ovvi motivi - punto di inserimento
^, che viene utilizzato per negare la classe di caratteri (ad esempio:[^ab]corrisponde a qualsiasi carattere maaeb). - trattino
-, che viene utilizzato per denotare un intervallo (ad esempio:[0-9]corrisponde a qualsiasi cifra)
Tuttavia, questi possono ancora essere aggiunti senza scappare se posizionati in posizioni strategiche all'interno della classe del personaggio:
- la parentesi di chiusura può essere posizionata subito dopo la parentesi di apertura, es:
[]a]corrisponde a]oa. - il cursore può essere posizionato ovunque tranne dopo la parentesi aperta, ad esempio:
[a^]corrisponde a^oa - il trattino può essere posizionato subito dopo la parentesi di apertura o prima di quella di chiusura, ad esempio:
[-a]e[a-]entrambi corrispondono aae-.
Maggiori informazioni possono essere trovate nella pagina man su POSIX regex
(grazie Tomalak Geret'kal!)