ENTMF 

UVALID

文字列が有効な Unicode UTF-8 または UTF-16 データで構成されている場合、UVALID 関数は値ゼロを返す。文字列に無効な Unicode データが含まれている場合、UVALID 関数は最初の無効な要素の指標を返す。

この関数の型は整数である。

一般形式

UVALID 関数の一般形式の構文

引数

  1. argument-1 の字類は、英字、英数字、各国文字、または UTF-8 とする。

返却値

  1. 返却値は整数であり、次のとおり argument-1 の値に応じて異なる。
    • argument-1 の字類が英字、英数字、または UTF-8 であり、UTF-8 で符号化された有効な Unicode データで構成されている場合、返却値はゼロになる。
    • argument-1 の字類が英字、英数字、または UTF-8 であり、UTF-8 で符号化された無効な Unicode データが含まれている場合、返却値は無効な UTF-8 データが開始される先頭バイトの位置になる。
    • argument-1 の字類が各国文字であり、UTF-16 で符号化された有効な Unicode データで構成されている場合、返却値はゼロになる。
    • argument-1 の字類が各国文字であり、UTF-16 で符号化された無効な Unicode データが含まれている場合、返却値は無効な UTF-16 データが開始される先頭の UTF-16 符号化単位の位置になる。この位置は、無効なデータの前にある適正な UTF-16 符号化単位数に 1 を足した結果である。
注: UVALID 関数は、文字列が適正な Unicode UTF-8 または UTF-16 データで構成されているかどうかを示す。文字列が表す Unicode コード ポイントの一部またはすべてが文字に割り当てられているかどうかを示すものではない。

説明

この関数は表意文字異体字セレクター (IVS) をサポートし、フォント ソフトウェアでデフォルトとは異なる字形を選択できる (異体字が存在しないかサポートされていない場合はフォント ソフトウェアで無視される)。IVS は U-E0100 から U-E01EF の範囲の Unicode 文字で構成される。UTF-16 文字列は U-DB40 + DD00 から U-DB40 + DDEF の範囲のサロゲート ペアを使用し、UTF-8 文字列は 0xF3A08480 から 0xF3A087AF の範囲を使用する。

Unicode 文字の後に IVS が続く場合、この関数の処理において 1 文字として扱われる。