文字分類Character Classification

これらのルーチンでは、指定された 1 バイト文字、ワイド文字、またはマルチバイト文字について条件を満たすかどうかをテストします。Each of these routines tests a specified single-byte character, wide character, or multibyte character for satisfaction of a condition. (定義上、0 ~ 127 の間の ASCII 文字セットは、すべてのマルチバイト文字セットのサブセットと考えることができます。(By definition, the ASCII character set between 0 and 127 are a subset of all multibyte-character sets. たとえば、日本語のカタカナには ASCII 文字と非 ASCII 文字が含まれています)。For example, Japanese katakana includes ASCII as well as non-ASCII characters.)

テスト条件は、ロケールの LC_CTYPE カテゴリの設定で決まります。詳細については、「setlocale」を参照してください。The test conditions are affected by the setting of the LC_CTYPE category setting of the locale; see setlocale for more information. _l サフィックスが付いていないこれらの関数のバージョンでは、このロケールに依存する動作に現在のロケールを使用します。_l サフィックスが付いているバージョンは、渡されたロケール パラメーターを代わりに使用する点を除いて同じです。The versions of these functions without the _l suffix use the current locale for this locale-dependent behavior; the versions with the _l suffix are identical except that they use the locale parameter passed in instead.

通常、これらのルーチンはテストを記述するより速く実行されるため、こちらを使用するようにしてください。Generally these routines execute faster than tests you might write and should be favored over. たとえば、次のコードを実行するより isalpha(c) を呼び出した方が高速に処理できます。For example, the following code executes slower than a call to isalpha(c):

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

文字分類ルーチンCharacter-Classification Routines

ルーチンによって返される値Routine 文字のテスト条件Character test condition
isalnum、iswalnum、_isalnum_l、_iswalnum_l_ismbcalnum、_ismbcalnum_l、_ismbcalpha、_ismbcalpha_l、_ismbcdigit、_ismbcdigit_lisalnum, iswalnum, _isalnum_l, _iswalnum_l, _ismbcalnum, _ismbcalnum_l, _ismbcalpha, _ismbcalpha_l, _ismbcdigit, _ismbcdigit_l 英数字Alphanumeric
_ismbcalnum、_ismbcalnum_l、_ismbcalpha、_ismbcalpha_l、_ismbcdigit、_ismbcdigit_l_ismbcalnum, _ismbcalnum_l, _ismbcalpha, _ismbcalpha_l, _ismbcdigit, _ismbcdigit_l マルチバイトの英数字Multibyte alphanumeric
isalpha、iswalpha、_isalpha_l、_iswalpha_l_ismbcalnum、_ismbcalnum_l、_ismbcalpha、_ismbcalpha_l、_ismbcdigit、_ismbcdigit_lisalpha, iswalpha, _isalpha_l, _iswalpha_l, _ismbcalnum, _ismbcalnum_l, _ismbcalpha, _ismbcalpha_l, _ismbcdigit, _ismbcdigit_l alphabeticAlphabetic
isascii、__isascii、iswasciiisascii, __isascii, iswascii ASCIIASCII
isblank、iswblank、_isblank_l、_iswblank_l_ismbcsblank、_ismbcsblank_lisblank, iswblank, _isblank_l, _iswblank_l, _ismbcsblank, _ismbcsblank_l 空白 (スペースまたは水平タブ)Blank (space or horizontal tab)
iscntrl、iswcntrl、_iscntrl_l、_iswcntrl_liscntrl, iswcntrl, _iscntrl_l, _iswcntrl_l コントロールControl
iscsym、iscsymf、__iscsym、__iswcsym、__iscsymf、__iswcsymf、_iscsym_l、_iswcsym_l、_iscsymf_l、_iswcsymf_liscsym, iscsymf, __iscsym, __iswcsym, __iscsymf, __iswcsymf, _iscsym_l, _iswcsym_l, _iscsymf_l, _iswcsymf_l 文字、アンダースコア、または数字Letter, underscore, or digit
iscsym、iscsymf、__iscsym、__iswcsym、__iscsymf、__iswcsymf、_iscsym_l、_iswcsym_l、_iscsymf_l、_iswcsymf_liscsym, iscsymf, __iscsym, __iswcsym, __iscsymf, __iswcsymf, _iscsym_l, _iswcsym_l, _iscsymf_l, _iswcsymf_l 文字またはアンダースコアLetter or underscore
isdigit、iswdigit、_isdigit_l、_iswdigit_l_ismbcalnum、_ismbcalnum_l、_ismbcalpha、_ismbcalpha_l、_ismbcdigit、_ismbcdigit_lisdigit, iswdigit, _isdigit_l, _iswdigit_l, _ismbcalnum, _ismbcalnum_l, _ismbcalpha, _ismbcalpha_l, _ismbcdigit, _ismbcdigit_l 10 進数Decimal digit
isgraph、iswgraph、_isgraph_l、_iswgraph_l_ismbcgraph、_ismbcgraph_l、_ismbcprint、_ismbcprint_l、_ismbcpunct、_ismbcpunct_l、_ismbcblank、_ismbcblank_l、_ismbcspace、_ismbcspace_lisgraph, iswgraph, _isgraph_l, _iswgraph_l, _ismbcgraph, _ismbcgraph_l, _ismbcprint, _ismbcprint_l, _ismbcpunct, _ismbcpunct_l, _ismbcblank, _ismbcblank_l, _ismbcspace, _ismbcspace_l スペース以外印刷可能Printable other than space
islower、iswlower、_islower_l、_iswlower_l_ismbclower、_ismbclower_l、_ismbcupper、_ismbcupper_lislower, iswlower, _islower_l, _iswlower_l, _ismbclower, _ismbclower_l, _ismbcupper, _ismbcupper_l 小文字Lowercase
_ismbchira、_ismbchira_l、_ismbckata、_ismbckata_l_ismbchira, _ismbchira_l, _ismbckata, _ismbckata_l ひらがなHiragana
_ismbchira、_ismbchira_l、_ismbckata、_ismbckata_l_ismbchira, _ismbchira_l, _ismbckata, _ismbckata_l カタカナKatakana
_ismbclegal、_ismbclegal_l、_ismbcsymbol、_ismbcsymbol_l_ismbclegal, _ismbclegal_l, _ismbcsymbol, _ismbcsymbol_l 有効なマルチバイト文字Legal multibyte character
_ismbcl0、_ismbcl0_l、_ismbcl1、_ismbcl1_l、_ismbcl2、_ismbcl2_l_ismbcl0, _ismbcl0_l, _ismbcl1, _ismbcl1_l, _ismbcl2, _ismbcl2_l 日本 - レベル 0 のマルチバイト文字Japan-level 0 multibyte character
_ismbcl0、_ismbcl0_l、_ismbcl1、_ismbcl1_l、_ismbcl2、_ismbcl2_l_ismbcl0, _ismbcl0_l, _ismbcl1, _ismbcl1_l, _ismbcl2, _ismbcl2_l 日本 - レベル 1 のマルチバイト文字Japan-level 1 multibyte character
_ismbcl0、_ismbcl0_l、_ismbcl1、_ismbcl1_l、_ismbcl2、_ismbcl2_l_ismbcl0, _ismbcl0_l, _ismbcl1, _ismbcl1_l, _ismbcl2, _ismbcl2_l 日本 - レベル 2 のマルチバイト文字Japan-level 2 multibyte character
_ismbclegal、_ismbclegal_l、_ismbcsymbol、_ismbcsymbol_l_ismbclegal, _ismbclegal_l, _ismbcsymbol, _ismbcsymbol_l 英数字以外のマルチバイト文字Non-alphanumeric multibyte character
isprint、iswprint、_isprint_l、_iswprint_l_ismbcgraph、_ismbcgraph_l、_ismbcprint、_ismbcprint_l、_ismbcpunct、_ismbcpunct_l、_ismbcblank、_ismbcblank_l、_ismbcspace、_ismbcspace_lisprint, iswprint, _isprint_l, _iswprint_l, _ismbcgraph, _ismbcgraph_l, _ismbcprint, _ismbcprint_l, _ismbcpunct, _ismbcpunct_l, _ismbcblank, _ismbcblank_l, _ismbcspace, _ismbcspace_l 印刷可能Printable
ispunct、iswpunct、_ispunct_l、_iswpunct_l_ismbcgraph、_ismbcgraph_l、_ismbcprint、_ismbcprint_l、_ismbcpunct、_ismbcpunct_l、_ismbcblank、_ismbcblank_l、_ismbcspace、_ismbcspace_lispunct, iswpunct, _ispunct_l, _iswpunct_l, _ismbcgraph, _ismbcgraph_l, _ismbcprint, _ismbcprint_l, _ismbcpunct, _ismbcpunct_l, _ismbcblank, _ismbcblank_l, _ismbcspace, _ismbcspace_l 区切り記号Punctuation
isspace、iswspace、_isspace_l、_iswspace_l_ismbcgraph、_ismbcgraph_l、_ismbcprint、_ismbcprint_l、_ismbcpunct、_ismbcpunct_l、_ismbcblank、_ismbcblank_l、_ismbcspace、_ismbcspace_lisspace, iswspace, _isspace_l, _iswspace_l, _ismbcgraph, _ismbcgraph_l, _ismbcprint, _ismbcprint_l, _ismbcpunct, _ismbcpunct_l, _ismbcblank, _ismbcblank_l, _ismbcspace, _ismbcspace_l 空白White-space
isupper, iswupper, _ismbclower, _ismbclower_l, _ismbcupper, _ismbcupper_lisupper, iswupper, _ismbclower, _ismbclower_l, _ismbcupper, _ismbcupper_l 大文字Uppercase
_isctype、iswctype、_isctype_l、_iswctype_l_isctype, iswctype, _isctype_l, _iswctype_l desc 引数で指定されたプロパティProperty specified by desc argument
isxdigit、iswxdigit、_isxdigit_l、_iswxdigit_lisxdigit, iswxdigit, _isxdigit_l, _iswxdigit_l 16 進数Hexadecimal digit
_mbclen、mblen、_mblen_l_mbclen, mblen, _mblen_l 有効なマルチバイト文字の長さを返します。結果は、現在のロケールの LC_CTYPE のカテゴリの設定によって異なりますReturn length of valid multibyte character; result depends on LC_CTYPE category setting of current locale

関連項目See also

カテゴリ別ユニバーサル C ランタイム ルーチンUniversal C runtime routines by category