from: <a href=http://pubs.opengroup.org/onlinepubs/9699919799/>/pubs.opengroup.org/onlinepubs/9699919799/</a>
  • copy name of an existing locale which shall be used as the definition of this category. If this keyword is specified, no other keyword shall be specified.
  • upper uppercase letters. POSIX: 26 uppercase letters : A B C D E F G H I J K L M N O P Q R S T U V W X Y Z In a locale definition file, no character specified for the keywords cntrl, digit, punct, or space shall be specified. The uppercase letters <A> to <Z>, as defined in Character Set Description File (the portable character set), are automatically included in this class.
  • lower lowercase letters. POSIX: 26 lowercase letters : a b c d e f g h i j k l m n o p q r s t u v w x y z In a locale definition file, no character specified for the keywords cntrl, digit, punct, or space shall be specified. The lowercase letters <a> to <z> of the portable character set are automatically included in this class.
  • alpha letters. POSIX: upper and lower included. In a locale definition file, no character specified for the keywords cntrl, digit, punct, or space shall be specified. Characters classified as either upper or lower are automatically included in this class.
  • digit Define the numeric digits. POSIX: 0 1 2 3 4 5 6 7 8 9 In a locale definition file, only the digits <zero>, <one>, <two>, <three>, <four>, <five>, <six>, <seven>, <eight>, and <nine> shall be specified, and in contiguous ascending sequence by numerical value. The digits <zero> to <nine> of the portable character set are automatically included in this class.
  • alnum letters and numeric digits. Only the characters specified for the alpha and digit keywords shall be specified. Characters specified for the keywords alpha and digit are automatically included in this class.
  • space white-space characters. POSIX: exactly <space>, <form-feed>, <newline>, <carriage-return>, <tab>, and <vertical-tab> In a locale definition file, no character specified for the keywords upper, lower, alpha, digit, graph, or xdigit shall be specified. The <space>, <form-feed>, <newline>, <carriage-return>, <tab>, and <vertical-tab> of the portable character set, and any characters included in the class blank are automatically included in this class.
  • cntrl control characters. POSIX: no characters in classes alpha or print In a locale definition file, no character specified for the keywords upper, lower, alpha, digit, punct, graph, print, or xdigit shall be specified.
  • punct punctuation characters. POSIX: neither the <space> nor any characters in classes alpha, digit In a locale definition file, no character specified for the keywords upper, lower, alpha, digit, cntrl, xdigit, or as the <space> shall be specified.
  • graph printable characters, not including the <space>. POSIX: classes alpha, digit, and punct In a locale definition file, characters specified for the keywords upper, lower, alpha, digit, xdigit, and punct are automatically included in this class. No character specified for the keyword cntrl shall be specified.
  • print printable characters, including the <space>. POSIX: characters graph In a locale definition file, characters specified for the keywords upper, lower, alpha, digit, xdigit, punct, graph, and the <space> are automatically included in this class. No character specified for the keyword cntrl shall be specified.
  • xdigit Define the hexadecimal digits. POSIX: 0 1 2 3 4 5 6 7 8 9 A B C D E F a b c d e f In a locale definition file, only the characters defined for the class digit shall be specified, in contiguous ascending sequence by numerical value, followed by one or more sets of six characters representing the hexadecimal digits 10 to 15 inclusive, with each set in ascending order (for example, <A>, <B>, <C>, <D>, <E>, <F>, <a>, <b>, <c>, <d>, <e>, <f>). The digits <zero> to <nine>, the uppercase letters <A> to <F>, and the lowercase letters <a> to <f> of the portable character set are automatically included in this class.
  • blank <blank> characters. POSIX: <space> and <tab> In a locale definition file, the <space> and <tab> are automatically included in this class.
  • charclass Define one or more locale-specific character class names as strings separated by <semicolon> characters.
    Each named character class can then be defined subsequently in the LC_CTYPE definition.
    A character class name consists of at least one and at most {CHARCLASS_NAME_MAX} bytes of alphanumeric characters from the portable filename character set.
    The first character not be a digit.
    The name not match any of the LC_CTYPE keywords
  • charclass-name belonging to the named locale-specific character class. POSIX: locale-specific named character classes need not exist. If a class name is defined by a charclass keyword, but no characters are subsequently assigned to it, this is not an error; it represents a class without any characters belonging to it. The charclass-name can be used as the property argument to the wctype() function, in regular expression and shell pattern-matching bracket expressions, and by the tr command.
  • toupper Define the mapping of lowercase letters to uppercase letters. POSIX: at a minimum, the 26 lowercase characters: a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z In a locale definition file, the operand shall consist of character pairs, separated by <semicolon> characters. The characters in each character pair shall be separated by a <comma> and the pair enclosed by parentheses. The first character in each pair is the lowercase letter, the second the corresponding uppercase letter. Only characters specified for the keywords lower and upper shall be specified. The lowercase letters <a> to <z>, and their corresponding uppercase letters <A> to <Z>, of the portable character set are automatically included in this mapping, but only when the toupper keyword is omitted from the locale definition.
  • tolower Define the mapping of uppercase letters to lowercase letters. POSIX: at a minimum, the 26 uppercase characters: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z In a locale definition file, the operand shall consist of character pairs, separated by <semicolon> characters. The characters in each character pair shall be separated by a <comma> and the pair enclosed by parentheses. The first character in each pair is the uppercase letter, the second the corresponding lowercase letter. Only characters specified for the keywords lower and upper shall be specified. If the tolower keyword is omitted from the locale definition, the mapping is the reverse mapping of the one specified for toupper.