質問: eucのダブルバイト文字の判定 eucでダブルバイト文字の1バイト目と、そうでない普通のeucの文字とを 区別することはでますか? もしできたら、eucのダブルバイト文字の1バイト目の領域を教えて下さい。
回答: eucには、2バイト文字の他に3バイト文字もあります。 各文字のコード範囲は、以下の通りです。 2バイト文字 ・1バイト目 0x8e , 0xa1 ~ 0xfe ・2バイト目 0xa1 ~ 0xfe 3バイト文字 ・1バイト目 0x8f ・2バイト目 0xa1 ~ 0xfe ・3バイト目 0xa1 ~ 0xfe すべて asciiコード(0x00 ~ 0x7f)以外で構成されているわけですが、ほとんどの部分でコード範囲が重複しています。 このため、「ある文字列のnバイト目が、何バイト文字の何バイト目か」を判別するには、文字列先頭からチェックをするしかありません。