2.5 Text Search Filter Libraryで使用できる文字コード

Text Search Filter Libraryでは,シフトJISコード,日本語EUC,およびUTF-8の3種類の文字コードが使用されます。異なる文字コードを使用した場合,検索結果が不正となりますのでご注意ください。

ここでは,Text Search Filter Libraryで使用できる文字コードについてそれぞれ説明します。

<この節の構成>
(1) シフトJISコード
(2) 日本語EUCコード
(3) UTF-8コード
(4) 文字コードの統一性
(5) マルチバイト検索機能

(1) シフトJISコード

使用できるシフトJISのコード範囲を次の表に示します。

表2-14 シフトJISコードで使用できる文字

文字種長さ(バイト)配置
2バイトコードの1バイト目2バイトコードの2バイト目
文字コード1バイト文字コード1バイト0x20~0x7E
0xA1~0xDF
2バイト文字コード2バイト0x81~0x9F
0xE0~0xFC
0x40~0x7E
0x80~0xFC
制御コードJIS制御文字コード1バイト0x09
0x0A
0x0D

(2) 日本語EUCコード

使用できる日本語EUCの範囲を次の表に示します。

表2-15 日本語EUCコードで使用できる文字

文字種長さ(バイト)配置
2バイトコードの1バイト目2バイトコードの2バイト目
文字コード1バイト文字コード1バイト0x20~0x7E
2バイト文字コード2バイト0x8E0xA1~0xDF
0xA1~0xFE0xA1~0xFE
制御コードJIS制御文字コード1バイト0x09
0x0A
0x0D

(3) UTF-8コード

使用できるUTF-8の範囲を次の表に示します。

表2-16 UTF-8コードで使用できる文字

コードポイント1バイト2バイト3バイト4バイト5バイト6バイト
U+00000009,U+0000000a,U+0000000d,U+00000020~U+0000007E09,0a,0d,20~7E     
U+00000080~U+000007FFC280~DFBF    
U+00000800~U+0000FFFFE0A080~EFBFBF   
U+00010000~U+0010FFFFF0908080~F48FBFBF  
U+00110000~U+001FFFFFF4908080~F7BFBFBF  
U+00200000~U+03FFFFFFF888808080~FBBFBFBFBF 
U+04000000~U+7FFFFFFFFC8480808080~FDBFBFBFBFBF
注※
UCS4の範囲の制御文字については,記述できない範囲があります。

(4) 文字コードの統一性

同義語辞書,検索語,検索タームで使用するコードは,同じ文字コードにする必要があります。文字コードの判定は,TS0LIB_LANG環境変数を設定して判断します。TS0LIB_LANG環境変数が設定されていない場合は,TSLANG環境変数またはLANG環境変数を参照して文字コード種別を判断します。

環境変数の設定をしていない場合は,Text Search Filter LibraryはシフトJISと判断します。また,TS0LIB_LANG環境変数の設定値が不正の場合はエラーとなります。ただしTSLANG環境変数またはLANG環境変数の設定値は,不正の場合でもエラーになりません。

文字コードによる環境変数値を次の表に示します。

表2-17 文字コードの環境変数値

文字コード環境変数AIXWindowsHP-UX
シフトJISTS0LIB_LANGSJISSJISSJIS
TSLANGまたはLANGja_JP.SJISja_JP.SJISja_JP.SJISまたはjapanese
日本語EUCTS0LIB_LANGEUCEUCEUC
TSLANGまたはLANGja_JP.EUCまたはja_JP.UJISja_JP.EUCまたはja_JP.UJIS
UTF-8TS0LIB_LANGUTF-8UTF-8UTF-8
TSLANGまたはLANG

(5) マルチバイト検索機能

マルチバイト文字を意識した検索を実行します。

例えば”B”(0x42)で検索した場合に,”。”(0x8142)のように下位バイトにヒットしません。