Классификация символов

Каждая из этих процедур проверяет определенные однобайтовые символы, расширенные символы или многобайтовые символы на соответствие условиям. (По определению набор символов между 0 и 127 кодировки ASCII является подмножеством всех многобайтовых кодировок. Например, японская катакана содержит как символы ASCII, так и не-ASCII.)

Условия теста зависят от настройки категории LC_CTYPE языкового стандарта; дополнительные сведения см. в разделе setlocale. Версии этих функций без суффикса _l используют текущий языковой стандарт для данной функциональности, зависящей от языкового стандарта; версии с суффиксом _l идентичны, за исключением того, что они используют переданный параметр языкового стандарта.

Обычно эти процедуры выполняются быстрее, чем тесты, которые можно написать, им следует отдавать приоритет. Например, следующий код выполняется медленнее, чем вызов isalpha(c):

if ((c >= 'A') && (c <= 'Z')) || ((c >= 'a') && (c <= 'z'))
    return TRUE;

Операции классификации символов

Подпрограмма

Условие теста символа

Эквивалент в .NET Framework

isalnum, iswalnum, _isalnum_l, _iswalnum_l, _ismbcalnum, _ismbcalnum_l, _ismbcalpha, _ismbcalpha_l, _ismbcdigit, _ismbcdigit_l

Буквенно-цифровой

System::Char::IsLetterOrDigit.

_ismbcalnum, _ismbcalnum_l, _ismbcalpha, _ismbcalpha_l, _ismbcdigit, _ismbcdigit_l

Буквенно-цифровой

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

isalpha, iswalpha, _isalpha_l, _iswalpha_l, _ismbcalnum, _ismbcalnum_l, _ismbcalpha, _ismbcalpha_l, _ismbcdigit, _ismbcdigit_l

Буквенный

System::Char::IsLetter

__isascii, iswascii

ASCII

System::Char::IsLetter

isblank, iswblank, _isblank_l, _iswblank_l, _ismbcsblank, _ismbcsblank_l

Пробел (пробел или горизонтальная табуляция)

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Для получения дополнительной информации см. Примеры вызовов неуправляемого кода.

iscntrl, iswcntrl, _iscntrl_l, _iswcntrl_l

Элемент управления

System::Char::IsControl

__iscsym, __iswcsym, __iscsymf, __iswcsymf, _iscsym_l, _iswcsym_l, _iscsymf_l, _iswcsymf_l

Буква, символ подчеркивания или цифра

System::Char::IsControl

__iscsym, __iswcsym, __iscsymf, __iswcsymf, _iscsym_l, _iswcsym_l, _iscsymf_l, _iswcsymf_l

Буква или символ подчеркивания

System::Char::IsControl

isdigit, iswdigit, _isdigit_l, _iswdigit_l, _ismbcalnum, _ismbcalnum_l, _ismbcalpha, _ismbcalpha_l, _ismbcdigit, _ismbcdigit_l

Десятичная цифра

System::Char::IsDigit

isgraph, iswgraph, _isgraph_l, _iswgraph_l, _ismbcgraph, _ismbcgraph_l, _ismbcprint, _ismbcprint_l, _ismbcpunct, _ismbcpunct_l, _ismbcblank, _ismbcblank_l, _ismbcspace, _ismbcspace_l

Печатные символы, отличные от пробела

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

islower, iswlower, _islower_l, _iswlower_l, _ismbclower, _ismbclower_l, _ismbcupper, _ismbcupper_l

Строчные буквы

System::Char::IsLower

_ismbchira, _ismbchira_l, _ismbckata, _ismbckata_l

Хирагана

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

_ismbchira, _ismbchira_l, _ismbckata, _ismbckata_l

Катакана

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

_ismbclegal, _ismbclegal_l, _ismbcsymbol, _ismbcsymbol_l

Допустимый многобайтовый символ

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

_ismbcl0, _ismbcl0_l, _ismbcl1, _ismbcl1_l, _ismbcl2, _ismbcl2_l

Многобайтовый символ Японии уровня 0

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

_ismbcl0, _ismbcl0_l, _ismbcl1, _ismbcl1_l, _ismbcl2, _ismbcl2_l

Многобайтовый символ Японии уровня 1

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

_ismbcl0, _ismbcl0_l, _ismbcl1, _ismbcl1_l, _ismbcl2, _ismbcl2_l

Многобайтовый символ Японии уровня 2

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

_ismbclegal, _ismbclegal_l, _ismbcsymbol, _ismbcsymbol_l

Не алфавитно-цифровые многобайтовые символы

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

isprint, iswprint, _isprint_l, _iswprint_l, _ismbcgraph, _ismbcgraph_l, _ismbcprint, _ismbcprint_l, _ismbcpunct, _ismbcpunct_l, _ismbcblank, _ismbcblank_l, _ismbcspace, _ismbcspace_l

Печатные

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

ispunct, iswpunct, _ispunct_l, _iswpunct_l, _ismbcgraph, _ismbcgraph_l, _ismbcprint, _ismbcprint_l, _ismbcpunct, _ismbcpunct_l, _ismbcblank, _ismbcblank_l, _ismbcspace, _ismbcspace_l

Знак пунктуации

System::Char::IsPunctuation

isspace, iswspace, _isspace_l, _iswspace_l, _ismbcgraph, _ismbcgraph_l, _ismbcprint, _ismbcprint_l, _ismbcpunct, _ismbcpunct_l, _ismbcblank, _ismbcblank_l, _ismbcspace, _ismbcspace_l

Пробел

System::Char::IsWhiteSpace

Isupper, iswupper, _ismbclower, _ismbclower_l, _ismbcupper, _ismbcupper_l

Прописные буквы

System::Char::IsUpper

_isctype, iswctype, _isctype_l, _iswctype_l

Значение свойства, указанного аргументом desc

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

isxdigit, iswxdigit, _isxdigit_l, _iswxdigit_l

Шестнадцатеричная цифра

System::Char::IsNumber

_mbclen, mblen, _mblen_l

Возвращает длину допустимого многобайтового символа; результат зависит от значения параметра категории LC_CTYPE текущего языкового стандарта

Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

См. также

Ссылки

Процедуры среды выполнения по категориям