5.3. Zeichenklassen

Es können sogenannte Zeichenklassen definiert werden, indem eine Liste von Zeichen, eingeschlossen in eckige Klammern [], angegeben wird. So eine Zeichenklasse findet genau eines der aufgelisteten Zeichen Zeichen im Zielstring.
Falls das erste aufgelistete Zeichen, das direkt nach dem [, ein ^ ist, findet die Zeichenklasse jedes Zeichen ausser denjenigen in der Liste.
Ausdruck
Beschreibung
foob[aeiou]r findet die Strings 'foobar', 'foober' etc. aber nicht 'foobbr', 'foobcr' etc.
foob[^aeiou]r findet die Strings 'foobbr', 'foobcr' etc. aber nicht 'foobar', 'foober' etc.
Innerhalb der Liste kann das Zeichen - benutzt werden, um einen Bereich oder eine Menge von Zeichen zu definieren. So definiert a-z alle Zeichen zwischen a and z inklusive.
Falls das Zeichen - selbst ein Mitglied der Zeichenklasse sein soll, dann kann es als erstes oder letztes Zeichen in der Liste verwendet werden oder escaped werden, indem ein \ vorangestellt wird. Wenn das Zeichen ] ebenfalls Mitglied der Zeichenklasse sein soll, dann setze kann es als erstes Zeichen in der Liste verwendet werden oder ebenfalls escaped werden.
Ausdruck
Beschreibung
[-az] findet 'a', 'z' und '-'
[az-] findet 'a', 'z' und '-'
[a\-z] findet 'a', 'z' und '-'
[a-z] findet alle 26 Kleinbuchstaben von 'a' bis 'z'
[\n-\x0D] findet eines der Zeichen #10, #11, #12 oder #13.
[\d-t] findet irgendeine Ziffer, '-' oder 't'.
[]-a] findet irgendein Zeichen von ']'..'a'.