PredicateStore関数

このページでは、<predstore>タグ内でデータ操作を行える関数についてご説明します。

関数一覧

利用できる関数の一覧です。関数をクリックすると、関数の詳細へジャンプします。

「␣」は、半角スペースを表します。

関数 概要
ListValue.contains(value) ListValue(リスト形式のValue)の要素に、valueと一致するものが存在するか確認します。
ListValue.length ListValue(リスト形式のValue)の要素数を取得します。
ListValue.sort(order) ListValue(リスト形式のValue)をorderに従い、昇順または降順にソートします。
ListValue.unique ListValue(リスト形式のValue)の要素から重複を削除します。
ListValue.replace(target|replace) ListValue(リスト形式のValue)の要素を置換した結果を取得します。
ListValue.slice(start␣length) ListValue(リスト形式のValue)の要素から、特定の範囲を切り取ります。
(配列[]の値やオブジェクト{}も展開)
ListValue.slice2(start␣length) ListValue(リスト形式のValue)の要素から、特定の範囲を切り取ります。
(配列[]の値やオブジェクト{}は展開しない)
ListValue.shift() ListValue(リスト形式のValue)の先頭要素を削除します。
ListValue.pop() ListValue(リスト形式のValue)の終端要素を削除します。
ListValue.unshift(value␣...) ListValue(リスト形式のValue)の先頭にvalueを挿入します。
ListValue.push(value␣...) ListValue(リスト形式のValue)の終端にvalueを追加します。
Object.toJson() Object以下の全てのデータ構造を展開します。
Object.setJson(json) Objectにjsonの内容に基づき、データ構造を設定します。

関数詳細

「␣」は、半角スペースを表します。

ListValue.contains(value)
参照

ListValueの要素に、valueと一致するものが存在するか確認します。
valueの半角スペースは一つの要素に含んで検索します)

パラメータ

  • value – 存在を確認したい値。

戻り値

  • ListValueに、valueと一致する要素が存在する場合にTRUE。それ以外の場合はFALSE
Example - 1

以下のデータに対して、「1」の存在を確認する例です。

xAIML

実行結果

Example - 2

以下のデータに対して、「1 2」の存在を確認する例です。

xAIML

実行結果

ListValue.length
参照

ListValueの要素数を取得します。

パラメータ

  • なし

戻り値

  • ListValueの要素の数。
Example - 1

以下のデータから、要素数を取得する例です。

xAIML

実行結果

ListValue.sort(order)
参照

ListValueorderに従い、昇順または降順にソートします。
(数値は文字列としてソートします)

パラメータ

  • orderasc(昇順)またはdesc(降順) 。

戻り値

  • ListValueのソート結果。
Example - 1

以下のデータを昇順にソートする例です。

xAIML

実行結果

Example - 2

以下のデータを昇順にソートする例です。

xAIML

実行結果

ListValue.unique
参照

ListValueの要素から重複を削除します。

パラメータ

  • なし

戻り値

  • ListValue内の重複を削除した結果。
Example - 1

以下のデータから、重複を削除する例です。

xAIML

実行結果

ListValue.replace(target|replacement)
参照

ListValueの要素を置換した結果を取得します。

パラメータ

  • target – 置換対象。
  • replacement – 置換後の値。

戻り値

  • LV内の要素を置換した結果。
Example - 1

以下のデータを置換する例です。

xAIML

実行結果

Example - 2

以下のデータから、置換を利用して特定の要素を削除する例です。

xAIML

実行結果

ListValue.slice(start␣length)
参照

ListValueの要素から、特定の範囲を切り取ります。
(配列[]の値やオブジェクト{}も展開)

パラメータ

  • start – スライスを開始するインデックス。(インデックスは1から開始)
  • length – スライスして取得したい要素数。

戻り値

  • ListValueの要素を切り取った結果。
Example - 1

以下のデータから、データを切り取る例です。

xAIML

実行結果

Example - 2

以下のデータから、データを切り取る例です。

xAIML

実行結果

ListValue.slice2(start␣length)
参照

ListValueの要素から、特定の範囲を切り取ります。
(配列[]の値やオブジェクト{}は展開しない)

パラメータ

  • start – スライスを開始するインデックス。(インデックスは1から開始)
  • length – スライスして取得したい要素数。

戻り値

  • ListValueから要素を抽出した結果。
Example - 1

以下のデータから、データを切り取る例です。

xAIML

実行結果

Example - 2

以下のデータから、データを切り取る例です。

xAIML

実行結果

ListValue.shift()
更新

ListValueの先頭要素を削除します。

パラメータ

  • なし

戻り値

  • ListValueから削除した要素。
Example - 1

以下のデータから、先頭要素を削除する例です。

xAIML

実行結果

データ構造

実行前

実行後

ListValue.pop()
更新

ListValueの終端要素を削除します。

パラメータ

  • なし

戻り値

  • ListValueから削除した終端要素。
Example - 1

以下のデータから、終端要素を削除する例です。

xAIML

実行結果

データ構造

実行前

実行後

ListValue.unshift(value␣...)
更新

ListValueの先頭にvalueを挿入します。

パラメータ

  • value – 先頭に挿入したい値または$Object。(スペース区切りで複数指定可)

戻り値

  • ListValueの先頭に要素を挿入した結果。
Example - 1

以下のデータの先頭に、要素を追加する例です。

xAIML

実行結果

データ構造

実行前

実行後

ListValue.push(value␣...)
更新

ListValueの終端にvalueを追加します。

パラメータ

  • value – 終端に追加したい値または$Object。(スペース区切りで複数指定可)

戻り値

  • ListValueの終端に要素を全て追加した結果
Example - 1

以下のデータの終端に、要素を追加する例です。

xAIML

実行結果

データ構造

実行前

実行後

Object.toJson()
参照

Object以下の全てのデータ構造を展開します。

パラメータ

  • なし

戻り値

  • ObjectをJSON形式に変換した文字列。
Example - 1

以下のデータをJSON形式に変換する例です。

xAIML

実行結果

Object.setJson(json)
更新

Objectjsonの内容に基づき、データ構造を設定します。

パラメータ

  • json – JSON文字列。

戻り値

  • OK
Example - 1

Objectjson文字列を設定する例です。

実行結果

データ構造

実行前

実行後