4.1. LC_CTYPE

○基本クラスは規格に従って以下のように定義する。

  upper/lower/alpha

ISO 646 IRV/JIS X 0208/JIS X 0212 のアルファベット文字 (ギリシア文字/キリール文字)を含むものとする。

  digit

0, 1, 2, 3, 4, 5, 6, 7, 8, 9

ISO 646 IRV の数字のみを含むものとする。 JIS X 0208 の数字を含んではならない。

  xdigit

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f, A, B, C, D, E, F

ISO 646 IRV の英数字のみを含むものとする。 JIS の英数字を含んではならない。

  blank

ISO 646 IRV の SPACE, TAB を含み JIS X 0208 の空白(1区1点)は含まないものとする。

  space

ISO 646 IRV の TAB, LF, VT, FF, CR, SPACE を含み JIS X 0208 の空白(1区1点)を含むものとする。

  cntrl

ISO 646 IRV の制御文字を含むものとする。

  punct

各文字集合の特殊文字を含むものとする。

  graph

各文字集合の図形文字を含むものとする。

  print

各文字集合の表示可能文字を含むものとする。

  toupper

同じ文字集合の内部において大文字へと置換する。

  tolower

同じ文字集合の内部において小文字へと置換する。

○可能ならば以下のクラスを追加する。

  jdigit

0,1,2,3,4,5,6,7,8,9 JIS X 0208 の算用数字のみを含むものとする。

  jhira

JIS X 0208 の平仮名を含むものとする。 (゛゜ーゝゞ も含む。)

  jkata

JIS X 0208 の片仮名を含むものとする。 (゛゜ーヽヾ ヵヶ も含む。) JIS X 0201 のカタカナを含むものとする。

  jkanji

JIS X 0208/JIS X 0212 の漢字を含むものとする。 (仝々〇 も含む。)

  jspace

JIS X 0208 の空白(1区1点)のみを含むものとする。

○可能ならば以下の変換を追加する。

  tojhira

JIS X 0208 の内で片仮名を平仮名に変換する。

  tojkata

JIS X 0208 の内で平仮名を片仮名に変換する。