Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

$ZISWIDE

文字列に 16 ビットの文字が含まれているか否かをチェックします。

Synopsis

$ZISWIDE(string)

パラメータ

string 1 文字以上の文字列。引用符で囲みます。

概要

$ZISWIDE は、文字列に 16 ビットの文字が含まれるか否かを確認するために使用するブーリアン関数です。以下の値を返します。

0 すべての文字が、ASCII 値 255 あるいはそれ以下 (8 ビット文字) である場合。NULL 文字列 ("") も 0 を返します。
1 1 つ以上の文字が ASCII 値 255 以上 (多バイト文字) である場合。

Caché の Unicode バージョンでは、すべての文字は 16 ビットです。$ZISWIDE は、文字の値を確認し、それらが ASCII 配列 (0-255) 内にあり 8 ビットで表示できるか、または多バイト文字の範囲 (256 - 65535) 内にあり Unicode 文字の 16 ビットすべてを使用するかを決定します。

以下の例では、最初の 2 つのコマンドは、文字列に 1 バイト文字 (8 ビット) しか含まれないので、0 を返します。3 つ目のコマンドは、文字列に多バイト文字値 (2 番目の値) が含まれるため、1 を返します。

   WRITE $ZISWIDE("abcd"),","
   WRITE $ZISWIDE($CHAR(71,83,77)),","
   WRITE $ZISWIDE($CHAR(71,300,77))

この例では、0,0,1 を返すのは、Unicode サポートを適用してインストールされた Caché インスタンスのみです。8 ビット・サポートを適用してインストールされた Caché は、0,0,0 を返します。

関連項目

FeedbackOpens in a new tab