Posix-Zeichenklassen verwenden eine [:alpha:]
-Notation, die innerhalb von a verwendet wird regulärer Ausdruck wie:
Sie müssen nach unten scrollen, um zu den Posix-Informationen im obigen Link zu gelangen. Aus der Dokumentation:
%Vor%POSIX-Klammerausdrücke sind auch ähnlich wie Zeichenklassen. Sie bieten eine portable Alternative zu den oben genannten, mit dem zusätzlichen Vorteil, dass sie Nicht-ASCII-Zeichen umfassen. Zum Beispiel passt / \ d / nur auf die ASCII-Dezimalziffern (0-9); während / [[: digit:]] / mit einem beliebigen Zeichen in der Unicode-Nd-Kategorie übereinstimmt.
%Vor%Ruby unterstützt auch die folgenden Nicht-POSIX-Zeichenklassen:
'[[' hat keine besondere Bedeutung. [xyz]
ist eine Zeichenklasse und entspricht einem einzelnen x
, y
oder z
. Das Karat ^
nimmt alle Zeichen, die nicht in den Klammern stehen.
Entfernen von ^
zur Vereinfachung, Sie können sehen, dass die erste offene Klammer mit der ersten geschlossenen Klammer übereinstimmt und die zweite geschlossene Klammer als Teil der Zeichenklasse verwendet wird. Die letzte geschlossene Klammer wird als ein anderes zu vergleichendes Zeichen behandelt.
Dies scheint in einigen Fällen das gleiche Ergebnis wie das Original zu haben
%Vor%Aber das liegt nur daran, dass Ihr regulärer Ausdruck nicht nach einer genauen Übereinstimmung sucht.
%Vor%