Шаг 35.
Язык программирования Go.
Классы символов, поддерживаемые пакетом regexp

    На этом шаге рассмотрим классы символов, поддерживаемые пакетом regexp, для работы со строками в Go.

    В табл. 1 даны классы символов, поддерживаемые механизмом RE2.

Таблица 1. Классы символов, поддерживаемые пакетом regexp
Последовательность Описание
[символы] Любой из перечисленных символов
[^символы] Любой из неперечисленных символов
[:имя:] Любой из ASCII-символов, входящий в класс с указанным именем:
[[:alnum:]] ≡ [0-9A-Za-z]
[[:lower:]] ≡ [a-z]
[[:alpha:]] ≡ [A-Za-z]
[[:print:]] ≡ [ -~]
[[:ascii:]] ≡ [\x00-\x7F]
[[:punct:]] ≡ [!-/:-@[-`{-~]
[[:blank:]] .≡ [ \t]
[[:space:]] ≡ [ \t\n\v\f\r]
[[:cntrl:]] ≡ [\x00-\x1F\x7F]
[[:upper:]] ≡ [A-Z]
[[:digit:]] ≡ [0-9]
[[:word:]] ≡ [0-9A-Za-z]
[[:graph:]] ≡ [!-~]
[[:xdigit:]] ≡ [0-9A-Fa-z]
[:^имя:] Любой из ASCII-символов, не входящий в класс с указанным именем
. Любой символ (включая перевод строки, если установлен флаг s)
\d Любая ASCII-цифра: [0-9]
\D Любой ASCII-символ, не являющийся цифрой: [^0-9]
\s Любой пробельный ASCII-символ: [\t\n\f\r]
\S Любой ASCII-символ, не являющийся пробельным: [^\t\n\f\r]
\w Любой ASCII-символ "слова": [0-9A-Za-z]
\W Любой ASCII-символ, не являющийся символом "слова": [^0-9A-Za-z]
\pN Любой символ Юникода, входящий в класс N с однобуквенным именем, например последовательности \pL соответствуют буквы Юникода
\PN Любой символ Юникода, не входящий в класс N с однобуквенным именем, например последовательности \PL соответствуют символы Юникода, не являющиеся буквами
\p{Имя} Любой символ Юникода, входящий в класс с именем Имя, например последовательности \p{Ll} соответствуют буквы нижнего регистра, последовательности \p{Lu} – буквы верхнего регистра, последовательности \p{Greek} – буквы греческого алфавита
\P{Имя} Любой символ Юникода, не входящий в класс с именем Имя

    На следующем шаге рассмотрим проверки и квантификаторы, поддерживаемые пакетом regexp.


Предыдущий шаг Содержание Следующий шаг