Text Search Filter Libraryでは,シフトJISコード,日本語EUC,およびUTF-8の3種類の文字コードが使用されます。異なる文字コードを使用した場合,検索結果が不正となりますのでご注意ください。
ここでは,Text Search Filter Libraryで使用できる文字コードについてそれぞれ説明します。
使用できるシフト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 | - |
使用できる日本語EUCの範囲を次の表に示します。
表2-15 日本語EUCコードで使用できる文字
文字種 | 長さ(バイト) | 配置 | ||
---|---|---|---|---|
2バイトコードの1バイト目 | 2バイトコードの2バイト目 | |||
文字コード | 1バイト文字コード | 1バイト | 0x20~0x7E | - |
2バイト文字コード | 2バイト | 0x8E | 0xA1~0xDF | |
0xA1~0xFE | 0xA1~0xFE | |||
制御コード | JIS制御文字コード | 1バイト | 0x09 0x0A 0x0D | - |
使用できるUTF-8の範囲を次の表に示します。
表2-16 UTF-8コードで使用できる文字
コードポイント | 1バイト | 2バイト | 3バイト | 4バイト | 5バイト | 6バイト |
---|---|---|---|---|---|---|
U+00000009,U+0000000a,U+0000000d,U+00000020~U+0000007E | 09,0a,0d,20~7E※ | |||||
U+00000080~U+000007FF | C280~DFBF | |||||
U+00000800~U+0000FFFF | E0A080~EFBFBF | |||||
U+00010000~U+0010FFFF | F0908080~F48FBFBF | |||||
U+00110000~U+001FFFFF | F4908080~F7BFBFBF | |||||
U+00200000~U+03FFFFFF | F888808080~FBBFBFBFBF | |||||
U+04000000~U+7FFFFFFF | FC8480808080~FDBFBFBFBFBF |
同義語辞書,検索語,検索タームで使用するコードは,同じ文字コードにする必要があります。文字コードの判定は,TS0LIB_LANG環境変数を設定して判断します。TS0LIB_LANG環境変数が設定されていない場合は,TSLANG環境変数またはLANG環境変数を参照して文字コード種別を判断します。
環境変数の設定をしていない場合は,Text Search Filter LibraryはシフトJISと判断します。また,TS0LIB_LANG環境変数の設定値が不正の場合はエラーとなります。ただしTSLANG環境変数またはLANG環境変数の設定値は,不正の場合でもエラーになりません。
文字コードによる環境変数値を次の表に示します。
表2-17 文字コードの環境変数値
文字コード | 環境変数 | AIX | Windows | HP-UX |
---|---|---|---|---|
シフトJIS | TS0LIB_LANG | SJIS | SJIS | SJIS |
TSLANGまたはLANG | ja_JP.SJIS | ja_JP.SJIS | ja_JP.SJISまたはjapanese | |
日本語EUC | TS0LIB_LANG | EUC | EUC | EUC |
TSLANGまたはLANG | ja_JP.EUCまたはja_JP.UJIS | ja_JP.EUCまたはja_JP.UJIS | - | |
UTF-8 | TS0LIB_LANG | UTF-8 | UTF-8 | UTF-8 |
TSLANGまたはLANG | - | - | - |
マルチバイト文字を意識した検索を実行します。
例えば”B”(0x42)で検索した場合に,”。”(0x8142)のように下位バイトにヒットしません。