Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

$LISTVALID (ObjectScript)

式がリストかどうかを判別します。

Synopsis

$LISTVALID(exp)
$LV(exp)

引数

引数 説明
exp 任意の有効な式。

説明

$LISTVALIDexp がリストかどうかを判別してブーリアン値を返します。exp がリストの場合、$LISTVALID は 1 を返し、exp がリストでない場合、$LISTVALID は 0 を返します。

リストは、$LISTBUILD または $LISTFROMSTRING を使用して作成されるか、$LIST を使用して別のリストから抽出されます。空の文字列 ("") を唯一の要素として含むリストは、有効なリストです。空の文字列 ("") 自体も、有効なリストと見なされます ($CHAR の特定の出力不能文字の組み合わせ ($CHAR(1)$CHAR(2,1)$CHAR(3,1,asciicode) など) により、有効な空のリストまたは 1 要素のリストを返すこともできます)。

以下の例はすべて、有効なリストであることを示す 1 を返します。

   SET w = $LISTBUILD("Red","Blue","Green")
   SET x = $LISTBUILD("Red")
   SET y = $LISTBUILD(365)
   SET z = $LISTBUILD("")
   WRITE !,$LISTVALID(w)
   WRITE !,$LISTVALID(x)
   WRITE !,$LISTVALID(y)
   WRITE !,$LISTVALID(z)

以下の例はすべて 0 を返します。数値および文字列 (NULL 文字列を除く) は有効なリストではありません。

   SET x = "Red"
   SET y = 44
   WRITE !,$LISTVALID(x)
   WRITE !,$LISTVALID(y)

以下の例はすべて 1 を返します。連結された値、入れ子になった値、および省略された値のリストはすべて有効なリストです。

   SET w=$LISTBUILD("Apple","Pear")
   SET x=$LISTBUILD("Walnut","Pecan")
   SET y=$LISTBUILD("Apple","Pear",$LISTBUILD("Walnut","Pecan"))
   SET z=$LISTBUILD("Apple","Pear",,"Pecan")
   WRITE !,$LISTVALID(w_x) ; concatenated
   WRITE !,$LISTVALID(y)   ; nested
   WRITE !,$LISTVALID(z)   ; omitted element

以下の例はすべて 1 を返します。$LISTVALID では以下の "空" のリストすべてを有効なリストと見なします。$LISTBUILD は、未定義の変数をリスト要素として取ることができ、これによってエラーが生成されることはありません。

  WRITE $LISTVALID(""),!
  WRITE $LISTVALID($LB()),!
  WRITE $LISTVALID($LB(UndefinedVar)),!
  WRITE $LISTVALID($LB("")),!
  WRITE $LISTVALID($LB($CHAR(0))),!
  WRITE $LISTVALID($LB(,))

関連項目

FeedbackOpens in a new tab