適用対象: Azure Logic Apps (従量課金 + 標準)
Azure Logic Apps および Power Automate でのワークフロー定義の場合、一部の式では、ワークフローの実行開始時にはまだ存在しない可能性がある値が実行時のアクションから取得されます。 これらの式で値を参照または処理するには、ワークフロー定義言語によって提供される式関数を使用できます。
注
このリファレンス ガイドは、Azure Logic Apps と Power Automate の両方に適用されますが、Azure Logic Apps のドキュメントに記載されています。 ガイドはロジック アプリ ワークフローを指しますが、これらの関数は Power Automate のフローと Azure Logic Apps のワークフローの両方で機能します。 Power Automate の関数と式の詳細については、「 条件での式の使用」を参照してください。
たとえば、整数や浮動小数点数の合計が必要なときは、add() 関数などの数学関数を使って値を計算できます。 関数を使用して実行できるタスクの他の例を示します。
課題 | 関数の構文 | 結果 |
---|---|---|
小文字の形式で文字列を返します。 | toLower('<text>') 例: toLower('Hello') |
こんにちは |
グローバル一意識別子 (GUID) を返します。 | GUID() | "c2ecc88d-88c8-4096-912c-d6f2e2b138ce" |
一般的な目的に基づいて関数を探すには、以降の表をご覧ください。 または、各関数の詳細については、アルファベット順の一覧を参照してください。
式の関数
式で関数を使用する方法を示すために、次の例では、customerName
パラメーターから値を取得し、式の中で accountName
関数を使ってその値を プロパティに割り当てる方法を示します。
"accountName": "@parameters('customerName')"
式で関数を使用できる他の一般的な方法を次に示します。
課題 | 式の中での関数の構文 |
---|---|
項目を関数に渡すことにより、項目に関する作業を実行します。 | "@<functionName>(<item>)" |
1. 入れ子になった 関数を使って、parameters() の値を取得します。 2. その値を functionName に渡して、結果の処理を実行します。 |
"@<functionName>(parameters('<parameterName>'))" |
1. 入れ子になった内部関数 functionName から結果を取得します。 2. 結果を外部関数 functionName2 に渡します。 |
"@<functionName2>(<functionName>(<item>))" |
1. functionName から結果を取得します。 2. 結果がプロパティ propertyName を持つオブジェクトであるため、そのプロパティの値を取得します。 |
"@<functionName>(<item>).<propertyName>" |
たとえば、concat()
関数はパラメーターとして 2 つ以上の文字列値を受け取ることができます。 この関数は、これらの文字列を 1 つの文字列に結合します。 たとえば "Sophia" と "Owen" のような文字列リテラルを渡して、結合された文字列 "SophiaOwen" を取得できます。
"customerName": "@concat('Sophia', 'Owen')"
または、パラメーターから文字列値を取得することができます。 次の例では、各 parameters()
パラメーターおよび concat()
パラメーターと firstName
パラメーターで、lastName
関数を使っています。 その後、結果の文字列を concat()
関数に渡して、結合された文字列 ("SophiaOwen" など) を取得します。
"customerName": "@concat(parameters('firstName'), parameters('lastName'))"
どちらの例でも、customerName
プロパティに結果を割り当てています。
関数の使用に関する考慮事項
デザイナーは、デザイン時に関数パラメーターとして使用されるランタイム式を評価しません。 デザイナーでは、すべての式をデザイン時に完全に評価できる必要があります。
関数パラメーターは左から右に評価されます。
パラメーターの定義の構文において、パラメーターの後に疑問符 (?) が付いている場合は、そのパラメーターが省略可能であることを意味します。 たとえば、getFutureTime() をご覧ください。
プレーンテキストでインラインで表示される関数式では、代わりに式の補間形式を使用するために中かっこ ({}) を囲む必要があります。 この形式は、解析の問題を回避するのに役立ちます。 関数式がプレーンテキストでインラインで表示されない場合は、中かっこは必要ありません。
次の例は、正しい構文と正しくない構文を示しています。
正しい:
"<text>/@{<function-name>('<parameter-name>')}/<text>"
正しくない:
"<text>/@<function-name>('<parameter-name>')/<text>"
OK:
"@<function-name>('<parameter-name>')"
次のセクションでは、一般的な目的に基づいて関数を整理します。または、これらの関数をアルファベット順で参照することもできます。
文字列関数
文字列を処理するには、以下の文字列関数および一部のコレクション関数も使用できます。 文字列関数は文字列でのみ機能します。
文字列関数 | 課題 |
---|---|
チャンク | 文字列またはコレクションを等しい長さのチャンクに分割します。 |
concat | 2 つ以上の文字列を結合し、結合された文字列を返します。 |
endsWith | 文字列が指定された部分文字列で終わっているかどうかを調べます。 |
formatNumber | 指定された形式に基づいて数値を文字列として返します |
GUID(グローバルユニーク識別子) | 文字列としてグローバル一意識別子 (GUID) を生成します。 |
indexOf | 部分文字列の開始位置を返します。 |
isFloat | 文字列が浮動小数点数かどうかを示すブール値を返します。 |
isInt | 文字列が整数かどうかを示すブール値を返します。 |
lastIndexOfメソッド(最後のインデックスを返すメソッド) | 部分文字列の最後の出現箇所の開始位置を返します。 |
長さ | 文字列または配列内の項目の数を返します。 |
nthIndexOf | 文字列内での部分文字列の n 番目の出現箇所の開始位置またはインデックス値を返します。 |
置き換える | 部分文字列を指定した文字列で置換し、更新された文字列を返します。 |
スライス | 開始およびは終了位置または値を指定して部分文字列を返します。 「substring」も参照してください。 |
分割 | 元の文字列で指定された区切り文字に基づいたより大きい文字列から、コンマで区切られた部分文字列を含む配列を返します。 |
startsWith | 文字列が特定の部分文字列で始まっているかどうかを調べます。 |
substring | 文字列から、指定された位置から始まる文字を返します。 「slice」も参照してください。 |
toLower | 小文字の形式で文字列を返します。 |
toUpper | 大文字の形式で文字列を返します。 |
** トリム | 文字列から先頭と末尾の空白を削除し、更新された文字列を返します。 |
コレクション関数
コレクション (通常は配列や文字列、場合によってはディクショナリ) を操作するには、以下のコレクション関数を使用できます。
コレクション関数 | 課題 |
---|---|
チャンク | 文字列またはコレクションを等しい長さのチャンクに分割します。 |
含む | コレクションに特定の項目があるかどうかを確認します。 |
empty | コレクションが空かどうかを調べます。 |
first | コレクションから最初の項目を返します。 |
intersection | 指定したコレクションすべてに共通する項目 "のみ" を含むコレクションを返します。 |
アイテム | この関数が配列に対する繰り返しアクションの内部に出現した場合、アクションの現在の繰り返しの間に配列の現在の項目を返します。 |
join | 配列の "すべて" の項目を含み、指定された区切り記号で各項目が区切られた、文字列を返します。 |
最後 | コレクションから最後の項目を返します。 |
長さ | 文字列または配列内の項目の数を返します。 |
リバース | 配列内の項目の順序を逆にします。 |
スキップ | コレクションの先頭から項目を削除し、"他のすべて" の項目を返します。 |
sort | コレクション内の項目を並べ替えます。 |
take | コレクションの先頭から項目を返します。 |
union | 指定した複数のコレクションの "すべての" 項目を含む 1 つのコレクションを返します。 |
論理比較関数
条件の処理、値と式の結果の比較、さまざまな種類のロジックの評価などを行うには、以下の論理比較関数を使用できます。 各関数の完全なリファレンスについては、アルファベット順の一覧を参照してください。
注
論理関数または条件を使用して値を比較する場合、null 値は空の文字列 (""
) 値に変換されます。 条件の動作は、null 値ではなく空の文字列と比較すると異なります。 詳細については、string() 関数に関するページを参照してください。
論理比較関数 | 課題 |
---|---|
、 | すべての式が true かどうかを調べます。 |
equals | 両方の値が等しいかどうかを調べます。 |
より大きい | 1 番目の値が 2 番目の値より大きいかどうかを調べます。 |
greaterOrEquals | 1 番目の値が 2 番目の値以上かどうかを調べます。 |
もし | 式が true か false かを調べます。 結果に基づき、指定された値を返します。 |
isFloat | 文字列が浮動小数点数かどうかを示すブール値を返します。 |
isInt | 文字列が整数かどうかを示すブール値を返します。 |
less | 1 番目の値が 2 番目の値より小さいかどうかを調べます。 |
lessOrEquals | 1 番目の値が 2 番目の値以下かどうかを調べます。 |
いいえ | 式が false かどうかを調べます。 |
または | 少なくとも 1 つの式が true かどうかを調べます。 |
変換関数
値の型または形式を変更するには、以下の変換関数を使用できます。 たとえば、値をブール値から整数に変更できます。 Azure Logic Apps が変換時にコンテンツ タイプを処理する方法の詳細については、「コンテンツ タイプを処理する」を参照してください。 各関数の完全なリファレンスについては、アルファベット順の一覧を参照してください。
注
Azure Logic Apps を使用すると、base64 エンコードおよびデコードが自動的または暗黙的に実行されるため、エンコードおよびデコード関数を使用してこれらの変換を手動で実行する必要はありません。 ただし、デザイナーでこれらの関数を使用すると、デザイナーで予期しないレンダリング動作が発生する可能性があります。 関数のパラメーター値を編集しない場合、これらの動作は関数の可視性のみに影響を与え、その結果には影響しません。編集した場合は、関数とその結果がコードから削除されます。 詳細については、「暗黙的なデータ型の変換」を参照してください。
変換関数 | 課題 |
---|---|
array | 指定した 1 つの入力から配列を返します。 複数の入力の場合は、createArray をご覧ください。 |
base64 | 文字列の base64 エンコード バージョンを返します。 |
base64ToBinary | base64 エンコード文字列のバイナリ バージョンを返します。 |
base64ToString | base64 エンコード文字列の文字列バージョンを返します。 |
バイナリ | 入力値のバイナリ バージョンを返します。 |
bool | 入力値のブール値バージョンを返します。 |
createArray | 複数の入力から配列を作成して返します。 |
dataUri | 入力値のデータ URI を返します。 |
dataUriToBinary | データ URI のバイナリ バージョンを返します。 |
dataUriToString | データ URI の文字列バージョンを返します。 |
小数 | 10 進文字列の 10 進数を返します。 |
decodeBase64 | base64 エンコード文字列の文字列バージョンを返します。 |
decodeDataUri | データ URI のバイナリ バージョンを返します。 |
decodeUriComponent | エスケープ文字をデコード バージョンに置き換えた文字列を返します。 |
encodeUriComponent | URL の安全でない文字をエスケープ文字に置き換えた文字列を返します。 |
float | 入力値の浮動小数点数を返します。 |
int | 文字列の整数バージョンを返します。 |
json | 文字列または XML に対する JSON (JavaScript Object Notation) 型の値またはオブジェクトを返します。 |
string | 入力値の文字列バージョンを返します。 |
uriComponent | URL の安全でない文字がエスケープ文字に置き換えられた、入力値の URI エンコード バージョンを返します。 |
uriComponentToBinary | URI エンコード文字列のバイナリ バージョンを返します。 |
uriComponentToString | URI エンコード文字列の文字列バージョンを返します。 |
xml | 文字列の XML バージョンを返します。 |
暗黙的なデータ型の変換
Azure Logic Apps を使用すると、一部のデータ型間の変換が自動的または暗黙的に行われるため、これらの変換を手動で行う必要はありません。 たとえば、入力として文字列が想定されている場所で文字列以外の値を使用すると、Azure Logic Apps によって文字列以外の値が文字列に自動的に変換されます。
たとえば、トリガーから出力として数値が返されるとします。
triggerBody()?['123']
URL などの文字列入力が想定されている場所でこの数値出力を使用する場合、Azure Logic Apps によって中かっこ ({}
) 表記を使用して値が文字列に自動的に変換されます。
@{triggerBody()?['123']}
Base64 のエンコードとデコード
Azure Logic Apps を使用すると、base64 エンコードまたはデコードが自動的または暗黙的に実行されるため、対応する関数を使用してこれらの変換を手動で実行する必要はありません。
base64(<value>)
base64ToBinary(<value>)
base64ToString(<value>)
base64(decodeDataUri(<value>))
concat('data:;base64,',<value>)
concat('data:,',encodeUriComponent(<value>))
decodeDataUri(<value>)
注
これらの関数のいずれかを、デザイナーの使用中に、手動で直接トリガーまたはアクションに追加した、または式エディターを使用して追加したいずれかの場合、デザイナーから移動し、その後デザイナーに戻ると、デザイナーからその関数が消え、パラメーター値だけが残されます。 この動作は、関数のパラメーター値を編集せずに、この関数を使用するトリガーまたはアクションを選択した場合にも発生します。 この結果は、関数の可視性のみに影響し、その結果には影響しません。 コード ビューでは、関数への影響はありません。 ただし、関数のパラメーター値を編集すると、関数とその結果が両方ともコード ビューから削除され、関数のパラメーター値だけが残されます。
算術関数
整数と浮動小数点数を操作するには、以下の算術関数を使用できます。 各関数の完全なリファレンスについては、アルファベット順の一覧を参照してください。
算術関数 | 課題 |
---|---|
追加する | 2 つの数値を加算した結果を返します。 |
div | 2 つの数値を除算した結果を返します。 |
最大 | 数値のセットまたは配列から最大の値を返します。 |
min | 数値のセットまたは配列から最小の値を返します。 |
モッド | 2 つの数値を除算した剰余を返します。 |
mul | 2 つの数値を乗算した積を返します。 |
ランド | 指定された範囲からランダムな整数を返します。 |
range | 指定した整数から始まる整数の配列を返します。 |
sub | 1 番目の数値から 2 番目の数値を減算して、結果を返します。 |
日付と時刻関数
日付と時刻を操作するには、以下の日付と時刻の関数を使用できます。 各関数の完全なリファレンスについては、アルファベット順の一覧を参照してください。
日付または時刻の関数 | 課題 |
---|---|
addDays | タイムスタンプに日数を加算します。 |
addHours | タイムスタンプに時間を加算します。 |
addMinutes | タイムスタンプに分を加算します。 |
addSeconds | タイムスタンプに秒を加算します。 |
addToTime | タイムスタンプに指定した時間単位を加算します。 getFutureTime もご覧ください。 |
convertFromUtc | タイムスタンプを協定世界時 (UTC) からターゲット タイム ゾーンに変換します。 |
convertTimeZone | タイムスタンプをソース タイム ゾーンからターゲット タイム ゾーンに変換します。 |
UTCに変換 | タイムスタンプをソース タイム ゾーンから協定世界時 (UTC) に変換します。 |
dateDifference | 2 つの日付の差をタイムスパンとして返します。 |
dayOfMonth | タイムスタンプから月コンポーネントの日付を返します。 |
dayOfWeek | タイムスタンプから曜日を返します。 |
dayOfYear | タイムスタンプから年の何日目かを返します。 |
formatDateTime | タイムスタンプから日付を返します。 |
getFutureTime | 現在のタイムスタンプに指定した時刻単位を加えて返します。 addToTime もご覧ください。 |
getPastTime | 現在のタイムスタンプから指定した時刻単位を引いて返します。 subtractFromTime もご覧ください。 |
parseDateTime | タイムスタンプを含む文字列からタイムスタンプを返します。 |
startOfDay | タイムスタンプの日の開始日時を返します。 |
startOfHour | タイムスタンプの時間の始まりを返します。 |
startOfMonth | タイムスタンプの月の始まりを返します。 |
subtractFromTime | タイムスタンプから時間単位数を減算します。 getPastTime もご覧ください。 |
ticks | 指定したタイムスタンプの ticks プロパティの値を返します。 |
utcNow | 現在のタイムスタンプを文字列として返します。 |
ワークフロー関数
以下のワークフロー関数を使うと次のことができます。
- 実行時にワークフロー インスタンスの詳細を取得します。
- ロジック アプリまたはフローのインスタンス化に使われた入力を処理します。
- トリガーやアクションからの出力を参照します。
たとえば、あるアクションからの出力を参照し、後のアクションでそのデータを使用できます。 各関数の完全なリファレンスについては、アルファベット順の一覧を参照してください。
ワークフロー関数 | 課題 |
---|---|
アクション | 実行時に現在のアクションの出力を返すか、または他の JSON の名前と値のペアの値を返します。 actions もご覧ください。 |
アクション | 実行時にアクションの出力を返すか、または他の JSON の名前と値のペアの値を返します。 action もご覧ください。 |
body | 実行時のアクションの body 出力を返します。 |
formDataMultiValues | form-data または form-encoded アクション出力内のキー名と一致する値を含む配列を作成します。 |
formDataValue | アクションの form-data 出力または form-encoded 出力内のキー名と一致する単一の値を返します。 |
アイテム | この関数が配列に対する繰り返しアクションの内部に出現した場合、アクションの現在の繰り返しの間に配列の現在の項目を返します。 |
items | この関数が Foreach ループまたは Until ループ内に出現した場合、指定したループから現在の項目を返します。 |
イテレーションインデックス | この関数が Until ループ内に出現した場合、現在の繰り返しのインデックス値を返します。 この関数は、入れ子になった Until ループ内で使用できます。 |
リストコールバックURL | トリガーまたはアクションを呼び出す "コールバック URL" を返します。 |
multipartBody | 複数の部分を持つアクションの出力の特定の部分に対する本文を返します。 |
出力 | 実行時のアクションの出力を返します。 |
パラメーター | ワークフローの定義で記述されているパラメーターの値を返します。 |
結果 |
For_each 、Until 、Scope など、指定されたスコープ付きアクション内の最上位レベルのアクションの入力と出力を返します。 |
トリガー | 実行時に、または他の JSON の名前と値のペアから、トリガーの出力を返します。 triggerOutputs および triggerBody もご覧ください。 |
triggerBody | 実行時にトリガーの body 出力を返します。
trigger をご覧ください。 |
triggerFormDataValue | form-data または form-encoded トリガー出力のキー名と一致する単一の値を返します。 |
triggerMultipartBody | トリガーの複数部分からなる出力内の特定の部分の本文を返します。 |
triggerFormDataMultiValues | form-data または form-encoded トリガー出力内のキー名と一致する値を含む配列を作成します。 |
triggerOutputs | 実行時のトリガーの出力を返すか、または他の JSON の名前と値のペアの値を返します。 trigger をご覧ください。 |
変数 | 指定した変数の値を返します。 |
ワークフロー | 実行時にワークフロー自体に関するすべての詳細を返します。 |
URI 解析関数
URI (Uniform Resource Identifier) を処理して、URI のさまざまなプロパティ値を取得します。以下の URI 解析関数を使用できます。 各関数の完全なリファレンスについては、アルファベット順の一覧を参照してください。
URI 解析関数 | 課題 |
---|---|
uriHost | URI (Uniform Resource Identifier) の host 値を返します。 |
uriPath | URI (Uniform Resource Identifier) の path 値を返します。 |
uriPathAndQuery | URI (Uniform Resource Identifier) の path と query の値を返します。 |
uriPort | URI (Uniform Resource Identifier) の port 値を返します。 |
uriQuery | URI (Uniform Resource Identifier) の query 値を返します。 |
uriScheme | URI (Uniform Resource Identifier) の scheme 値を返します。 |
操作関数: JSON と XML
JSON オブジェクトと XML ノードを処理するには、以下の操作関数を使用できます。 各関数の完全なリファレンスについては、アルファベット順の一覧を参照してください。
操作関数 | 課題 |
---|---|
addProperty | JSON オブジェクトにプロパティとその値または名前と値のペアを追加し、更新されたオブジェクトを返します。 |
coalesce | 1 つまたは複数のパラメーターから、最初の null 以外の値を返します。 |
プロパティを削除する | JSON オブジェクトからプロパティを削除し、更新されたオブジェクトを返します。 |
setProperty | JSON オブジェクトのプロパティの値を設定し、更新されたオブジェクトを返します。 |
xpath | XML で XPath (XML Path Language) 式と一致するノードまたは値を調べて、一致するノードまたは値を返します。 |
---------------------------------
すべての関数 (アルファベット順)
このセクションでは、使用可能なすべての関数をアルファベット順に示します。
A
アクション
実行時の "現在の" アクションの出力を返すか、または式に割り当てることができる他の JSON の名前と値のペアの値を返します。 既定では、この関数はアクション オブジェクト全体を参照しますが、必要に応じて値を取得するプロパティを指定することができます。 actions() も参照してください。
action()
関数は、次の場所でのみ使うことができます。
- 元の
unsubscribe
要求の結果にアクセスできるように、webhook アクションのsubscribe
プロパティ - アクションの
trackedProperties
プロパティ - アクションの
do-until
ループ条件
action()
action().outputs.body.<property>
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 財産> | いいえ | 糸 | 値が必要なアクション オブジェクトのプロパティの名前: name、startTime、endTime、inputs、outputs、status、code、trackingId、clientTrackingId。 Azure portal では、特定の実行履歴の詳細を調べることで、これらのプロパティを確認できます。 詳しくは、REST API のワークフロー実行アクションに関するページをご覧ください。 |
戻り値 | タイプ | 説明 |
---|---|---|
< アクション出力> | オブジェクト | 現在のアクションまたはプロパティからの JSON オブジェクトの出力 |
actions
実行時のアクションの出力を返すか、または式に割り当てることができる他の JSON の名前と値のペアの値を返します。 既定では、この関数はアクション オブジェクト全体を参照しますが、必要に応じて値を取得するプロパティを指定することができます。 短縮形については、body() を参照してください。 現在のアクションの場合は、action() をご覧ください。
注
以前は、actions()
関数を使うか、またはアクションが別のアクションからの出力を基にして実行したことを指定する場合は conditions
要素を使いました。 ただし、現在は、アクション間の依存関係を明示的に宣言するには、依存アクションの runAfter
プロパティを使い必要があります。
runAfter
プロパティについて詳しくは、runAfter プロパティを使ってエラーをキャッチして処理する方法に関するページをご覧ください。
actions('<actionName>')
actions('<actionName>').outputs.body.<property>
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< actionName> | イエス | 糸 | 出力を取得するアクション オブジェクトの名前 |
< 財産> | いいえ | 糸 | 値が必要なアクション オブジェクトのプロパティの名前: name、startTime、endTime、inputs、outputs、status、code、trackingId、clientTrackingId。 Azure portal では、特定の実行履歴の詳細を調べることで、これらのプロパティを確認できます。 詳しくは、REST API のワークフロー実行アクションに関するページをご覧ください。 |
戻り値 | タイプ | 説明 |
---|---|---|
< アクション出力> | オブジェクト | 指定したアクションまたはプロパティからの JSON オブジェクトの出力 |
例
この例は、実行時に X アクション status
から Get user
プロパティの値を取得します。
actions('Get_user').outputs.body.status
返される結果: "Succeeded"
add
2 つの数値を加算した結果を返します。
add(<summand_1>, <summand_2>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< summand_1>、 <summand_2> | イエス | 整数、浮動小数点数、または混合 | 加算する数値 |
戻り値 | タイプ | 説明 |
---|---|---|
< result-sum> | 整数または浮動小数点数 | 指定した数値を加算した結果 |
例
この例は、指定した数値を加算します。
add(1, 1.5)
返される結果: 2.5
日数を追加
タイムスタンプに日数を加算します。
addDays('<timestamp>', <days>, '<format>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< 日> | イエス | 整数 | 追加する正または負の日数 |
< 形式> | いいえ | 糸 |
1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< updated-timestamp> | 糸 | タイムスタンプに指定した日数を加えた値 |
例 1
この例は、指定したタイムスタンプに 10 日を加算します。
addDays('2018-03-15T00:00:00Z', 10)
返される結果: "2018-03-25T00:00:00.0000000Z"
例 2
この例は、指定したタイムスタンプから 5 日を減算します。
addDays('2018-03-15T00:00:00Z', -5)
返される結果: "2018-03-10T00:00:00.0000000Z"
addHours(時間を追加)
タイムスタンプに時間を加算します。
addHours('<timestamp>', <hours>, '<format>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< 時間> | イエス | 整数 | 追加する正または負の時間数 |
< 形式> | いいえ | 糸 |
1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< updated-timestamp> | 糸 | タイムスタンプに指定した時間数を加えた値 |
例 1
この例は、指定したタイムスタンプに 10 時間を加算します。
addHours('2018-03-15T00:00:00Z', 10)
返される結果: "2018-03-15T10:00:00.0000000Z"
例 2
この例は、指定したタイムスタンプから 5 時間を減算します。
addHours('2018-03-15T15:00:00Z', -5)
返される結果: "2018-03-15T10:00:00.0000000Z"
addMinutes
タイムスタンプに分を加算します。
addMinutes('<timestamp>', <minutes>, '<format>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< 議事録> | イエス | 整数 | 追加する正または負の分数 |
< 形式> | いいえ | 糸 |
1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< updated-timestamp> | 糸 | タイムスタンプに指定した分数を加えた値 |
例 1
この例は、指定したタイムスタンプに 10 分を加算します。
addMinutes('2018-03-15T00:10:00Z', 10)
返される結果: "2018-03-15T00:20:00.0000000Z"
例 2
この例は、指定したタイムスタンプから 5 分を減算します。
addMinutes('2018-03-15T00:20:00Z', -5)
返される結果: "2018-03-15T00:15:00.0000000Z"
addProperty
JSON オブジェクトにプロパティとその値または名前と値のペアを追加し、更新されたオブジェクトを返します。 実行時にプロパティが既に存在する場合、関数は失敗し、エラーをスローします。
addProperty(<object>, '<property>', <value>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< オブジェクト> | イエス | オブジェクト | プロパティを追加する JSON オブジェクト |
< 財産> | イエス | 糸 | 追加するプロパティの名前 |
< 価値> | イエス | [任意] | プロパティの値 |
戻り値 | タイプ | 説明 |
---|---|---|
< 更新されたオブジェクト> | オブジェクト | 指定したプロパティを含む更新された JSON オブジェクト |
親プロパティを既存のプロパティに追加するには、setProperty()
関数ではなく、addProperty()
関数を使用します。 それ以外の場合、関数は子オブジェクトだけを出力として返します。
setProperty(<object>, '<parent-property>', addProperty(<object>['<parent-property>'], '<child-property>', <value>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< オブジェクト> | イエス | オブジェクト | プロパティを追加する JSON オブジェクト |
< parent-property> | イエス | 糸 | 子プロパティを追加する親プロパティの名前 |
< 子プロパティ> | イエス | 糸 | 追加する子プロパティの名前 |
< 価値> | イエス | [任意] | 指定したプロパティに設定する値 |
戻り値 | タイプ | 説明 |
---|---|---|
< 更新されたオブジェクト> | オブジェクト | プロパティが設定された更新後の JSON オブジェクト |
例 1
この例では、middleName
関数を使用して文字列から JSON に変換される JSON オブジェクトに プロパティを追加します。 このオブジェクトには、プロパティ firstName
と surName
が既に含まれています。 この関数は、指定された値を新しいプロパティに割り当て、更新されたオブジェクトを返します。
addProperty(json('{ "firstName": "Sophia", "lastName": "Owen" }'), 'middleName', 'Anne')
現在の JSON オブジェクトを次に示します。
{
"firstName": "Sophia",
"surName": "Owen"
}
更新された JSON オブジェクトを次に示します。
{
"firstName": "Sophia",
"middleName": "Anne",
"surName": "Owen"
}
例 2
この例では、middleName
関数を使用して文字列から JSON に変換される JSON オブジェクトの既存の customerName
プロパティに 子プロパティを追加します。 この関数は、指定された値を新しいプロパティに割り当て、更新されたオブジェクトを返します。
setProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }'), 'customerName', addProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }')['customerName'], 'middleName', 'Anne'))
現在の JSON オブジェクトを次に示します。
{
"customerName": {
"firstName": "Sophia",
"surName": "Owen"
}
}
更新された JSON オブジェクトを次に示します。
{
"customerName": {
"firstName": "Sophia",
"middleName": "Anne",
"surName": "Owen"
}
}
addSeconds
タイムスタンプに秒を加算します。
addSeconds('<timestamp>', <seconds>, '<format>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< 秒> | イエス | 整数 | 追加する正または負の秒数 |
< 形式> | いいえ | 糸 |
1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< updated-timestamp> | 糸 | タイムスタンプに指定した秒数を加えた値 |
例 1
この例は、指定したタイムスタンプに 10 秒を加算します。
addSeconds('2018-03-15T00:00:00Z', 10)
返される結果: "2018-03-15T00:00:10.0000000Z"
例 2
この例は、指定したタイムスタンプから 5 秒を減算します。
addSeconds('2018-03-15T00:00:30Z', -5)
返される結果: "2018-03-15T00:00:25.0000000Z"
addToTime(アドトゥタイム)
タイムスタンプに指定した時間単位を加算します。 getFutureTime() もご覧ください。
addToTime('<timestamp>', <interval>, '<timeUnit>', '<format>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< 間隔> | イエス | 整数 | 追加する指定した時間単位の数 |
< timeUnit> | イエス | 糸 | interval で使用する時間の単位: "Second"、"Minute"、"Hour"、"Day"、"Week"、"Month"、"Year" |
< 形式> | いいえ | 糸 |
1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< updated-timestamp> | 糸 | タイムスタンプに指定した時間単位数を加えた値 |
例 1
この例は、指定したタイムスタンプに 1 日を加算します。
addToTime('2018-01-01T00:00:00Z', 1, 'Day')
返される結果: "2018-01-02T00:00:00.0000000Z"
例 2
この例は、指定したタイムスタンプに 1 日を加算します。
addToTime('2018-01-01T00:00:00Z', 1, 'Day', 'D')
省略可能な "D" 形式を使用して返される結果: "Tuesday, January 2, 2018"
and
すべての式が true かどうかを調べます。 すべての式が true の場合は true を返し、少なくとも 1 つの式が false の場合は false を返します。
and(<expression1>, <expression2>, ...)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< expression1>, <expression2>, ... | イエス | ブール値 | 調べる式 |
戻り値 | タイプ | 説明 |
---|---|---|
正 または 誤 | ブール値 | すべての式が true の場合は true を返します。 少なくとも 1 つの式が false の場合は false を返します。 |
例 1
これらの例は、指定したブール値がすべて true かどうかを調べます。
and(true, true)
and(false, true)
and(false, false)
次の結果を返します。
- 1 番目の例: 両方の式が true なので、
true
を返します。 - 2 番目の例: 1 つの式が false なので、
false
を返します。 - 3 番目の例: 両方の式が false なので、
false
を返します。
例 2
これらの例は、指定した式がすべて true かどうかを調べます。
and(equals(1, 1), equals(2, 2))
and(equals(1, 1), equals(1, 2))
and(equals(1, 2), equals(1, 3))
次の結果を返します。
- 1 番目の例: 両方の式が true なので、
true
を返します。 - 2 番目の例: 1 つの式が false なので、
false
を返します。 - 3 番目の例: 両方の式が false なので、
false
を返します。
アレイ
指定した 1 つの入力から配列を返します。 複数の入力の場合は、createArray() をご覧ください。
array('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | 配列を作成するための文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
[<value>] | Array | 指定した 1 つの入力を含む配列 |
例
この例は、"hello" という文字列から配列を作成します。
array('hello')
返される結果: ["hello"]
B
base64
文字列の base64 エンコード バージョンを返します。
注
Azure Logic Apps を使用すると、base64 エンコードおよびデコードが自動的または暗黙的に実行されるため、エンコードおよびデコード関数を使用してこれらの変換を手動で実行する必要はありません。 ただし、これらの関数を使用すると、デザイナーで予期しないレンダリング動作が発生する可能性があります。 関数のパラメーター値を編集しない場合、これらの動作は関数の可視性のみに影響を与え、その結果には影響しません。編集した場合は、関数とその結果がコードから削除されます。 詳細については、「Base64 のエンコードとデコード」を参照してください。
base64('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | 入力文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< base64-string> | 糸 | 入力文字列の base64 エンコード バージョン |
例
この例は、"hello" という文字列を base64 エンコード文字列に変換します。
base64('hello')
返される結果: "aGVsbG8="
base64ToBinary
base64 エンコード文字列のバイナリ バージョンを返します。
注
Azure Logic Apps を使用すると、base64 エンコードおよびデコードが自動的または暗黙的に実行されるため、エンコードおよびデコード関数を使用してこれらの変換を手動で実行する必要はありません。 ただし、デザイナーでこれらの関数を使用すると、デザイナーで予期しないレンダリング動作が発生する可能性があります。 関数のパラメーター値を編集しない場合、これらの動作は関数の可視性のみに影響を与え、その結果には影響しません。編集した場合は、関数とその結果がコードから削除されます。 詳細については、「Base64 のエンコードとデコード」を参照してください。
base64ToBinary('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | 変換する base64 エンコード文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< Base64文字列用のバイナリ> | 糸 | base64 エンコード文字列のバイナリ バージョン |
例
この例は、"aGVsbG8=" という base64 エンコード文字列をバイナリ文字列に変換します。
base64ToBinary('aGVsbG8=')
たとえば、HTTP アクションを使用して要求を送信しているとします。 base64 でエンコードされた文字列を base64ToBinary()
でバイナリ データに変換し、要求でそのデータをコンテンツ タイプ application/octet-stream
を使用して送信できます。
base64ToString
base64 エンコード文字列の文字列バージョンを返し、実質的に base64 の文字列をデコードします。 非推奨の decodeBase64() ではなく、この関数を使用してください。
注
Azure Logic Apps を使用すると、base64 エンコードおよびデコードが自動的または暗黙的に実行されるため、エンコードおよびデコード関数を使用してこれらの変換を手動で実行する必要はありません。 ただし、デザイナーでこれらの関数を使用すると、デザイナーで予期しないレンダリング動作が発生する可能性があります。 関数のパラメーター値を編集しない場合、これらの動作は関数の可視性のみに影響を与え、その結果には影響しません。編集した場合は、関数とその結果がコードから削除されます。 詳細については、「Base64 のエンコードとデコード」を参照してください。
base64ToString('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | デコードする base64 エンコード文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< decodeed-base64-string> | 糸 | base64 エンコード文字列の文字列バージョン。 |
例
この例は、"aGVsbG8=" という base64 エンコード文字列を単なる文字列に変換します。
base64ToString('aGVsbG8=')
返される結果: "hello"
binary
文字列の base64 エンコード バイナリ バージョンを返します。
binary('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | 変換する文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< 入力値向けバイナリ> | 糸 | 指定した文字列の base64 エンコード バイナリ バージョン |
例
たとえば、画像またはビデオ ファイルを返す HTTP アクションを使用している場合です。
binary()
を使用して、値を base-64 でエンコードされたコンテンツ エンベロープ モデルに変換できます。 その後、Compose
などの他のアクションでコンテンツ エンベロープを再利用できます。
この関数式を使用し、要求でコンテンツ タイプ application/octet-stream
の文字列バイトを送信できます。
body
実行時のアクションの body
出力を返します。
actions('<actionName>').outputs.body
の短縮形です。
actions() をご覧ください。
body('<actionName>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< actionName> | イエス | 糸 | 取得するアクションの body 出力の名前 |
戻り値 | タイプ | 説明 |
---|---|---|
< アクションボディ出力> | 糸 | 指定したアクションからの body 出力 |
例
この例は、X アクション body
からの Get user
出力を取得します。
body('Get_user')
返される結果:
"body": {
"FullName": "Contoso Corporation",
"Location": "Generic Town, USA",
"Id": 283541717,
"UserName": "ContosoInc",
"FollowersCount": 172,
"Description": "Leading the way in transforming the digital workplace.",
"StatusesCount": 93,
"FriendsCount": 126,
"FavouritesCount": 46,
"ProfileImageUrl": "https://pbs.twimg.com/profile_images/908820389907722240/gG9zaHcd_400x400.jpg"
}
ブール (bool)
値のブール値バージョンを返します。
bool(<value>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | [任意] | ブール値に変換する値。 |
オブジェクトで bool()
を使用している場合、オブジェクトの値はブール値に変換できる文字列か整数にする必要があります。
戻り値 | タイプ | 説明 |
---|---|---|
true または false |
ブール値 | 指定した値のブール値バージョン。 |
出力
これらの例では、bool()
で入力がサポートされているさまざまな種類を示しています。
入力値 | タイプ | 戻り値 |
---|---|---|
bool(1) |
整数 | true |
bool(0) |
整数 | false |
bool(-1) |
整数 | true |
bool('true') |
糸 | true |
bool('false') |
糸 | false |
C
チャンク (chunk)
文字列または配列を等しい長さのチャンクに分割します。
chunk('<collection>', '<length>')
chunk([<collection>], '<length>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< コレクション> | イエス | 文字列、配列 | 分割するコレクション |
< 長さ> | イエス | 各チャンクの長さ |
戻り値 | タイプ | 説明 |
---|---|---|
< コレクション> | Array | 指定した長さのチャンクの配列 |
例 1
次の例は、文字列を長さ 10 のチャンクに分割します。
chunk('abcdefghijklmnopqrstuvwxyz', 10)
返される結果: ['abcdefghij', 'klmnopqrst', 'uvwxyz']
例 2
次の例は、配列を長さ 5 のチャンクに分割します。
chunk(createArray(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12), 5)
返される結果: [ [1,2,3,4,5], [6,7,8,9,10], [11,12] ]
結合する
1 つまたは複数のパラメーターから、最初の null 以外の値を返します。 空の文字列、空の配列、空のオブジェクトは null ではありません。
coalesce(<object_1>, <object_2>, ...)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< object_1>、 <object_2>、... | イエス | 任意、型が混在してもかまいません | null かどうか調べる 1 つまたは複数の項目 |
戻り値 | タイプ | 説明 |
---|---|---|
< 最初の非ヌル項目> | [任意] | null ではない最初の項目または値。 すべてのパラメーターが null の場合、この関数は null を返します。 |
例
これらの例は、指定した値から最初の null 以外の値を返し、すべての値が null のときは null を返します。
coalesce(null, true, false)
coalesce(null, 'hello', 'world')
coalesce(null, null, null)
次の結果を返します。
- 1 番目の例:
true
- 2 番目の例:
"hello"
- 3 番目の例:
null
concat
2 つ以上の文字列を結合し、結合された文字列を返します。
concat('<text1>', '<text2>', ...)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< text1>, <text2>, ... | イエス | 糸 | 結合する少なくとも 2 つの文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< text1text2...> | 糸 | 入力文字列を結合して作成された文字列。 注: この結果の長さは 104,857,600 文字以下にする必要があります。 |
注
Azure Logic Apps を使用すると、base64 エンコードおよびデコードが自動的または暗黙的に実行されるため、エンコードまたはデコードを必要とするデータと共に concat()
関数を使用するときに、これらの変換を手動で実行する必要はありません。
concat('data:;base64,',<value>)
concat('data:,',encodeUriComponent(<value>))
ただし、デザイナーでこの関数を使用すると、デザイナーで予期しないレンダリング動作が発生する可能性があります。 関数のパラメーター値を編集しない場合、これらの動作は関数の可視性のみに影響を与え、その結果には影響しません。編集した場合は、関数とその結果がコードから削除されます。 詳細については、「Base64 のエンコードとデコード」を参照してください。
例
この例は、文字列 "Hello" と "World" を結合します。
concat('Hello', 'World')
返される結果: "HelloWorld"
contains
コレクションに特定の項目があるかどうかを確認します。 項目が見つかった場合は true を返し、見つからない場合は false を返します。 この関数は、大文字と小文字を区別します。
contains('<collection>', '<value>')
contains([<collection>], '<value>')
具体的には、この関数は次のコレクション型で動作します。
- "文字列" からの "部分文字列" の検索
- "配列" からの "値" の検索
- "ディクショナリ" からの "キー" の検索
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< コレクション> | イエス | 文字列、配列、ディクショナリ | 調べるコレクション |
< 価値> | イエス | それぞれ文字列、配列、ディクショナリ | 検索する項目 |
戻り値 | タイプ | 説明 |
---|---|---|
正 または 誤 | ブール値 | 項目が見つかった場合は true を返します。 見つからなかった場合は false を返します。 |
例 1
この例は、文字列 "hello world" で部分文字列 "world" を調べて、true を返します。
contains('hello world', 'world')
例 2
この例は、文字列 "hello world" で部分文字列 "universe" を調べて、false を返します。
contains('hello world', 'universe')
convertFromUtc
タイムスタンプを協定世界時 (UTC) からターゲット タイム ゾーンに変換します。
convertFromUtc('<timestamp>', '<destinationTimeZone>', '<format>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< destinationTimeZone> | イエス | 糸 | ターゲット タイム ゾーンの名前。 タイム ゾーン名については、Microsoft Windows の既定のタイム ゾーンに関するページを参照してください。 |
< 形式> | いいえ | 糸 |
1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< converted-timestamp> | 糸 | タイム ゾーンの UTC オフセットなしでターゲット タイム ゾーンに変換されたタイム スタンプ。 |
例 1
この例は、タイムスタンプを指定したタイム ゾーンに変換します。
convertFromUtc('2018-01-01T08:00:00.0000000Z', 'Pacific Standard Time')
返される結果: "2018-01-01T00:00:00.0000000"
例 2
この例は、タイムスタンプを指定したタイム ゾーンに変換して形式を設定します。
convertFromUtc('2018-01-01T08:00:00.0000000Z', 'Pacific Standard Time', 'D')
返される結果: "Monday, January 1, 2018"
convertTimeZone
タイムスタンプをソース タイム ゾーンからターゲット タイム ゾーンに変換します。
convertTimeZone('<timestamp>', '<sourceTimeZone>', '<destinationTimeZone>', '<format>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< sourceTimeZone> | イエス | 糸 | ソース タイム ゾーンの名前。 タイム ゾーン名については、Microsoft Windows の既定のタイム ゾーンに関する記事を参照してください。ただし、タイム ゾーン名から句読点を削除することが必要な場合があります。 |
< destinationTimeZone> | イエス | 糸 | ターゲット タイム ゾーンの名前。 タイム ゾーン名については、Microsoft Windows の既定のタイム ゾーンに関する記事を参照してください。ただし、タイム ゾーン名から句読点を削除することが必要な場合があります。 |
< 形式> | いいえ | 糸 |
1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< converted-timestamp> | 糸 | ターゲット タイム ゾーンに変換されたタイムスタンプ |
例 1
この例は、ソース タイム ゾーンをターゲット タイム ゾーンに変換します。
convertTimeZone('2018-01-01T08:00:00.0000000Z', 'UTC', 'Pacific Standard Time')
返される結果: "2018-01-01T00:00:00.0000000"
例 2
この例は、タイム ゾーンを指定したタイム ゾーンに変換して形式を設定します。
convertTimeZone('2018-01-01T80:00:00.0000000Z', 'UTC', 'Pacific Standard Time', 'D')
返される結果: "Monday, January 1, 2018"
convertToUtc(UTCに変換)
タイムスタンプをソース タイム ゾーンから協定世界時 (UTC) に変換します。
convertToUtc('<timestamp>', '<sourceTimeZone>', '<format>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< sourceTimeZone> | イエス | 糸 | ソース タイム ゾーンの名前。 タイム ゾーン名については、Microsoft Windows の既定のタイム ゾーンに関する記事を参照してください。ただし、タイム ゾーン名から句読点を削除することが必要な場合があります。 |
< 形式> | いいえ | 糸 |
1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< converted-timestamp> | 糸 | UTC に変換されたタイムスタンプ |
例 1
この例は、タイムスタンプを UTC に変換します。
convertToUtc('01/01/2018 00:00:00', 'Pacific Standard Time')
返される結果: "2018-01-01T08:00:00.0000000Z"
例 2
この例は、タイムスタンプを UTC に変換します。
convertToUtc('01/01/2018 00:00:00', 'Pacific Standard Time', 'D')
返される結果: "Monday, January 1, 2018"
createArray
複数の入力から配列を作成して返します。 単一入力の配列については、array() をご覧ください。
createArray('<object1>', '<object2>', ...)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< object1>, <object2>, ... | イエス | 任意、ただし混在していてはなりません | 配列を作成する少なくとも 2 つの項目 |
戻り値 | タイプ | 説明 |
---|---|---|
[<object1>, <object2>, ...] | Array | すべての入力項目から作成された配列 |
例
この例は、以下の入力から配列を作成します。
createArray('h', 'e', 'l', 'l', 'o')
返される結果: ["h", "e", "l", "l", "o"]
D
dataUri
文字列のデータ URI (Uniform Resource Identifier) を返します。
dataUri('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | 変換する文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< data-uri> | 糸 | 入力文字列に対するデータ URI |
例
この例は、"hello" という文字列に対する URI を作成します。
dataUri('hello')
返される結果: "data:text/plain;charset=utf-8;base64,aGVsbG8="
データURIをバイナリに変換
データ URI (Uniform Resource Identifier) のバイナリ バージョンを返します。
decodeDataUri() ではなく、この関数を使用してください。
どちらの関数も機能は同じですが、dataUriBinary()
をお勧めします。
dataUriToBinary('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | 変換するデータ URI |
戻り値 | タイプ | 説明 |
---|---|---|
< データURI用バイナリ> | 糸 | データ URI のバイナリ バージョン |
例
この例は、次のデータ URI のバイナリ バージョンを作成します。
dataUriToBinary('data:text/plain;charset=utf-8;base64,aGVsbG8=')
返される結果:
"01100100011000010111010001100001001110100111010001100101011110000111010000101111011100000 1101100011000010110100101101110001110110110001101101000011000010111001001110011011001010111 0100001111010111010101110100011001100010110100111000001110110110001001100001011100110110010 10011011000110100001011000110000101000111010101100111001101100010010001110011100000111101"
dataUriToString
データ URI (Uniform Resource Identifier) の文字列バージョンを返します。
dataUriToString('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | 変換するデータ URI |
戻り値 | タイプ | 説明 |
---|---|---|
< string-for-data-uri> | 糸 | データ URI の文字列バージョン |
例
この例は、次のデータ URI の文字列を作成します。
dataUriToString('data:text/plain;charset=utf-8;base64,aGVsbG8=')
返される結果: "hello"
** 日付差
2 つのタイムスタンプの差をタイムスパンとして返します。 この関数は、startDate
から endDate
を引き、文字列形式のタイムスタンプとして結果を返します。
dateDifference('<startDate>', '<endDate>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< startDate> | イエス | 糸 | タイムスタンプを含む文字列 |
< endDate> | イエス | 糸 | タイムスタンプを含む文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< timespan> | 糸 | 文字列形式のタイムスタンプで示す、2 つのタイムスタンプの差。
startDate が endDate より新しい場合、結果は負の値になります。 |
例
この例は、2 番目の値から最初の値を引きます。
dateDifference('2015-02-08', '2018-07-30')
返される結果: "1268.00:00:00"
dayOfMonth
タイムスタンプから月の日付を返します。
dayOfMonth('<timestamp>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
戻り値 | タイプ | 説明 |
---|---|---|
< 月の日> | 整数 | 指定したタイムスタンプの月の日付 |
例
この例は、次のタイムスタンプから月の日付を返します。
dayOfMonth('2018-03-15T13:27:36Z')
返される結果: 15
dayOfWeek
タイムスタンプから曜日を返します。
dayOfWeek('<timestamp>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
戻り値 | タイプ | 説明 |
---|---|---|
< 曜日> | 整数 | 指定したタイムスタンプの曜日。日曜日は 0、月曜日は 1、などとなります。 |
例
この例は、次のタイムスタンプから曜日を返します。
dayOfWeek('2018-03-15T13:27:36Z')
返される結果: 4
dayOfYear
タイムスタンプから年の何日目かを返します。
dayOfYear('<timestamp>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
戻り値 | タイプ | 説明 |
---|---|---|
< day-of-year> | 整数 | 指定したタイムスタンプの年初からの通算日数 |
例
この例は、次のタイムスタンプから年の何日目かを返します。
dayOfYear('2018-03-15T13:27:36Z')
返される結果: 74
10 進
文字列内の 10 進数を 10 進数として返します。 この関数は 10 進数の有効桁数を必要とするデータで作業しているとき使用できますが、論理比較関数や算術関数の入力として使用することもできます。 decimal() 関数の結果を使用するときに有効桁数をキャプチャして保持するには、任意の 10 進出力を文字列関数でラップします。 この使用法を次の例で示します。10 進数の結果を数値として使用すると、有効桁数が失われる可能性があります。
注
この関数と Azure Logic Apps ランタイムのコンテキストで説明している 10 進数の有効桁数は、.NET の 10 進数の有効桁数と同じです。
decimal('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | 文字列内の 10 進数 |
戻り値 | タイプ | 説明 |
---|---|---|
< 小数> | 10 進数 | 入力文字列の 10 進数 |
例 1
この例では、数値として使用される 10 進数を作成します。
decimal('1.2345678912312131') // Returns 1.234567891231213.
例 2
この例では 10 進数を作成して、結果を文字列に変換することで精度を維持します。
string(decimal('1.2345678912312131')) // Returns "1.2345678912312131".
例 3
この例では、算術関数を 2 つの 10 進数で使用して、結果を数値として使用します。
add(decimal('1.2345678912312131'), decimal('1.2345678912312131')) // Returns 2.469135782462426.
例 4
この例では、算術関数を 2 つの 10 進数で使用して、結果を文字列に変換することで精度を維持します。
string(add(decimal('1.2345678912312131'), decimal('1.2345678912312131'))) // Returns "2.4691357824624262".
decodeBase64 (非推奨)
この関数は非推奨です。代わりに base64ToString() を使用してください。
デコードデータURI
データ URI (Uniform Resource Identifier) のバイナリ バージョンを返します。
ではなく、decodeDataUri()
を使うようにしてください。 どちらの関数も機能は同じですが、dataUriToBinary()
をお勧めします。
注
Azure Logic Apps を使用すると、base64 エンコードおよびデコードが自動的または暗黙的に実行されるため、エンコードおよびデコード関数を使用してこれらの変換を手動で実行する必要はありません。 ただし、デザイナーでこれらの関数を使用すると、デザイナーで予期しないレンダリング動作が発生する可能性があります。 関数のパラメーター値を編集しない場合、これらの動作は関数の可視性のみに影響を与え、その結果には影響しません。編集した場合は、関数とその結果がコードから削除されます。 詳細については、「Base64 のエンコードとデコード」を参照してください。
decodeDataUri('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | デコードするデータ URI 文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< データURI用バイナリ> | 糸 | データ URI 文字列のバイナリ バージョン |
例
この例は、次のデータ URI のバイナリ バージョンを返します。
decodeDataUri('data:text/plain;charset=utf-8;base64,aGVsbG8=')
返される結果: "hello"
decodeUriComponent
エスケープ文字をデコード バージョンに置き換えた文字列を返します。
decodeUriComponent('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | エスケープ文字をデコードする文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< decodeed-uri> | 糸 | エスケープ文字がデコードされた更新後の文字列 |
例
この例は、次の文字列内のエスケープ文字をデコード バージョンに置き換えます。
decodeUriComponent('https%3A%2F%2Fcontoso.com')
返される結果: "https://contoso.com"
div
2 つの数値を除算した結果を返します。 結果の残りの部分を取得するには、mod() をご覧ください。
div(<dividend>, <divisor>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 配当> | イエス | 整数または浮動小数点数 | divisor によって除算される値。 |
< 除数> | イエス | 整数または浮動小数点数 | dividend を除算する値。0 にすることはできません |
戻り値 | タイプ | 説明 |
---|---|---|
< quotient-result> | 整数または浮動小数点数 | 1 番目の数値を 2 番目の数値で除算した結果。 被除数または除数が float 型である場合、結果は float 型になります。 注: float の結果を整数に変換するには、ロジック アプリから Azure で関数を作成し、呼び出してみてください。 |
例 1
どちらの例も、整数型の値 2
を返します
div(10,5)
div(11,5)
例 2
どちらの例も、float 型の値 2.2
を返します
div(11,5.0)
div(11.0,5)
E
encodeUriComponent
URL の安全でない文字がエスケープ文字に置き換えられた、文字列の URI (Uniform Resource Identifier) エンコード バージョンを返します。
ではなく、encodeUriComponent()
を使うようにしてください。 どちらの関数も機能は同じですが、uriComponent()
をお勧めします。
注
Azure Logic Apps を使用すると、base64 エンコードおよびデコードが自動的または暗黙的に実行されるため、エンコードおよびデコード関数を使用してこれらの変換を手動で実行する必要はありません。 ただし、デザイナーでこれらの関数を使用すると、デザイナーで予期しないレンダリング動作が発生する可能性があります。 関数のパラメーター値を編集しない場合、これらの動作は関数の可視性のみに影響を与え、その結果には影響しません。編集した場合は、関数とその結果がコードから削除されます。 詳細については、「Base64 のエンコードとデコード」を参照してください。
encodeUriComponent('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | URI エンコード形式に変換する文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< encoded-uri> | 糸 | エスケープ文字が使われている URI エンコード文字列 |
例
この例は、次の文字列の URI エンコード バージョンを作成します。
encodeUriComponent('https://contoso.com')
返される結果: "https%3A%2F%2Fcontoso.com"
empty
コレクションが空かどうかを調べます。 コレクションが空の場合は true を返し、空でない場合は false を返します。
empty('<collection>')
empty([<collection>])
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< コレクション> | イエス | 文字列、配列、オブジェクト | 調べるコレクション |
戻り値 | タイプ | 説明 |
---|---|---|
正 または 誤 | ブール値 | コレクションが空の場合は true を返します。 空でない場合は false を返します。 |
例
これらの例は、指定したコレクションが空かどうかを調べます。
empty('')
empty('abc')
次の結果を返します。
- 1 番目の例: 空の文字列を渡しているので、関数は
true
を返します。 - 2 番目の例: 文字列 "abc" を渡しているので、関数は
false
を返します。
endsWith
文字列が特定の部分文字列で終わっているかどうかを調べます。 部分文字列が見つかった場合は true を返し、見つからない場合は false を返します。 この関数は、大文字と小文字を区別しません。
endsWith('<text>', '<searchText>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< テキスト> | イエス | 糸 | 調べる文字列。 |
< searchText> | イエス | 糸 | 検索する末尾の部分文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
正 または 誤 | ブール値 | 末尾の部分文字列が見つかった場合は true を返します。 見つからなかった場合は false を返します。 |
例 1
この例は、文字列 "hello world" が文字列 "world" で終わっているかどうかを調べます。
endsWith('hello world', 'world')
返される結果: true
例 2
この例は、文字列 "hello world" が文字列 "universe" で終わっているかどうかを調べます。
endsWith('hello world', 'universe')
返される結果: false
equals
両方の値、式、またはオブジェクトが等しいかどうかを調べます。 両方が等しい場合は true を返し、等しくない場合は false を返します。
equals('<object1>', '<object2>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< object1>、 <object2> | イエス | 各種 | 比較する値、式、またはオブジェクト |
戻り値 | タイプ | 説明 |
---|---|---|
正 または 誤 | ブール値 | 両方が等しい場合は true を返します。 等しくない場合は false を返します。 |
例
これらの例は、指定した入力が等しいかどうかを調べます。
equals(true, 1)
equals('abc', 'abcd')
次の結果を返します。
- 1 番目の例: 両方の値は等しいので、関数は
true
を返します。 - 2 番目の例: 両方の値は等しくないので、関数からは
false
が返されます。
F
first
文字列または配列から最初の項目を返します。
first('<collection>')
first([<collection>])
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< コレクション> | イエス | 文字列、配列 | 最初の項目を検索するコレクション |
戻り値 | タイプ | 説明 |
---|---|---|
< 最初のコレクションアイテム> | [任意] | コレクション内の最初の項目 |
例
これらの例は、以下のコレクション内の最初の項目を検索します。
first('hello')
first(createArray(0, 1, 2))
次の結果を返します。
- 1 番目の例:
"h"
- 2 番目の例:
0
float
浮動小数点数の文字列バージョンを実際の浮動小数点数に変換します。 この関数は、ロジック アプリ ワークフローや Power Automate フローなど、アプリにカスタム パラメーターを渡す場合にのみ使用できます。 ロケール固有の形式で表される浮動小数点文字列を変換するには、必要に応じて RFC 4646 ロケール コードを指定できます。
float('<value>', '<locale>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | 変換する有効な浮動小数点数を含む文字列。 最小値と最大値は、float データ型の制限と同じです。 |
< ロケール> | いいえ | 糸 | 使用する RFC 4646 ロケール コード。 指定しない場合は、既定のロケールが使用されます。 Locale が有効な値でない場合、指定されたロケールが無効である、またはロケールが関連付けられていないことを示すエラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< float-value> | Float | 指定した文字列の浮動小数点数。 最小値と最大値は、float データ型の制限と同じです。 |
例 1
この例は、次の浮動小数点数の文字列バージョンを作成します。
float('10,000.333')
返される結果: 10000.333
例 2
次の例は、次のドイツ語形式の浮動小数点数の文字列バージョンを作成します。
float('10.000,333', 'de-DE')
返される結果: 10000.333
例 3
予期しない有効な入力の例:
float('12,3,4,5678') //Returns 12345678
float('1234567,8+') //Returns 12345678
float('12345,6,78,-') //Returns -12345678
float('-12,345,678,') //Returns -12345678
float('12345678.-') //Returns -12345678
float('.12345678') //Returns 0.12345678
formatDateTime
指定した形式でタイムスタンプを返します。
formatDateTime('<timestamp>', '<format>'?, '<locale>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< 形式> | いいえ | 糸 | 1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 |
< ロケール> | いいえ | 糸 | 使用するロケール。 指定しない場合、値は en-us です。
ロケールが有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< 再フォーマットされたタイムスタンプ> | 糸 | 指定されている場合、指定された形式およびロケールの更新済みタイムスタンプ。 |
例
formatDateTime('03/15/2018') // Returns '2018-03-15T00:00:00.0000000'.
formatDateTime('03/15/2018 12:00:00', 'yyyy-MM-ddTHH:mm:ss') // Returns '2018-03-15T12:00:00'.
formatDateTime('01/31/2016', 'dddd MMMM d') // Returns 'Sunday January 31'.
formatDateTime('01/31/2016', 'dddd MMMM d', 'fr-fr') // Returns 'dimanche janvier 31'.
formatDateTime('01/31/2016', 'dddd MMMM d', 'fr-FR') // Returns 'dimanche janvier 31'.
formatDateTime('01/31/2016', 'dddd MMMM d', 'es-es') // Returns 'domingo enero 31'.
formDataMultiValues(フォームデータの複数の値)
アクションの form-data 出力または form-encoded 出力内のキー名と一致する値の配列を返します。
formDataMultiValues('<actionName>', '<key>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< actionName> | イエス | 糸 | 出力が指定したキー値であるアクション |
< 鍵> | イエス | 糸 | 値を指定するキーの名前 |
戻り値 | タイプ | 説明 |
---|---|---|
[<キーと値のペアを持つ配列>] | Array | 指定したキーと一致するすべての値で構成される配列 |
例
この例は、指定したアクションの form-data 出力または form-encoded 出力内の "Subject" キーの値から配列を作成します。
formDataMultiValues('Send_an_email', 'Subject')
配列で件名のテキストを返します (例: ["Hello world"]
)
フォームデータ値
アクションの form-data 出力または form-encoded 出力内のキー名と一致する単一の値を返します。 複数の一致が見つかった場合、関数はエラーをスローします。
formDataValue('<actionName>', '<key>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< actionName> | イエス | 糸 | 出力が指定したキー値であるアクション |
< 鍵> | イエス | 糸 | 値を指定するキーの名前 |
戻り値 | タイプ | 説明 |
---|---|---|
< キー-バリュー> | 糸 | 指定したキーの値 |
例
この例は、指定したアクションの form-data 出力または form-encoded 出力内の "Subject" キーの値から文字列を作成します。
formDataValue('Send_an_email', 'Subject')
文字列として件名のテキストを返します (例: "Hello world"
)
formatNumber
指定された形式に基づいた文字列として数値を返します。
formatNumber(<number>, <format>, <locale>?)
戻り値 | タイプ | 説明 |
---|---|---|
< formatted-number> | 糸 | 指定された数値を、指定した形式の文字列で表したもの。 この戻り値は int または float にキャストできます。 |
例 1
数値 1234567890
の形式を設定するとします。 この例では、この数値の形式を文字列 "1,234,567,890.00" として設定します。
formatNumber(1234567890, '#,##0.00', 'en-US')
*例 2"
数値 1234567890
の形式を設定するとします。 この例では、数値の形式を文字列 "1.234.567.890,00" に設定します。
formatNumber(1234567890, '#,##0.00', 'is-IS')
例 3
数値 17.35
の形式を設定するとします。 この例では、数値の形式を文字列 "$17.35" に設定します。
formatNumber(17.35, 'C2')
例 4
数値 17.35
の形式を設定するとします。 この例では、数値の形式を文字列 "17,35 kr" に設定します。
formatNumber(17.35, 'C2', 'is-IS')
G
未来の時間を取得する
現在のタイムスタンプに指定した時刻単位を加えて返します。
getFutureTime(<interval>, <timeUnit>, <format>?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 間隔> | イエス | 整数 | 加算する時間単位数 |
< timeUnit> | イエス | 糸 | interval で使用する時間の単位: "Second"、"Minute"、"Hour"、"Day"、"Week"、"Month"、"Year" |
< 形式> | いいえ | 糸 |
単一の書式指定子またはカスタム書式パターン。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、指定された形式が無効であり、数値形式の文字列である必要があるというエラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< updated-timestamp> | 糸 | 現在のタイムスタンプに指定した時間単位数を加えた値 |
例 1
現在のタイムスタンプが "2018-03-01T00:00:00.0000000Z" であるものとします。 この例は、そのタイムスタンプに 5 日を加算します。
getFutureTime(5, 'Day')
返される結果: "2018-03-06T00:00:00.0000000Z"
例 2
現在のタイムスタンプが "2018-03-01T00:00:00.0000000Z" であるものとします。 この例は、5 日を加算して、結果を "D" 形式に変換します。
getFutureTime(5, 'Day', 'D')
返される結果: "Tuesday, March 6, 2018"
getPastTime
現在のタイムスタンプから指定した時刻単位を引いて返します。
getPastTime(<interval>, <timeUnit>, <format>?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 間隔> | イエス | 整数 | 減算する指定した時間単位の数 |
< timeUnit> | イエス | 糸 | interval で使用する時間の単位: "Second"、"Minute"、"Hour"、"Day"、"Week"、"Month"、"Year" |
< 形式> | いいえ | 糸 |
単一の書式指定子またはカスタム書式パターン。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、指定された形式が無効であり、数値形式の文字列である必要があるというエラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< updated-timestamp> | 糸 | 現在のタイムスタンプから指定した時間単位数を引いた値 |
例 1
現在のタイムスタンプが "2018-02-01T00:00:00.0000000Z" であるものとします。 この例は、そのタイムスタンプから 5 日を減算します。
getPastTime(5, 'Day')
返される結果: "2018-01-27T00:00:00.0000000Z"
例 2
現在のタイムスタンプが "2018-02-01T00:00:00.0000000Z" であるものとします。 この例は、5 日を減算して、結果を "D" 形式に変換します。
getPastTime(5, 'Day', 'D')
返される結果: "Saturday, January 27, 2018"
greater
1 番目の値が 2 番目の値より大きいかどうかを調べます。 1 番目の値の方が大きい場合は true を返し、大きくない場合は false を返します。
greater(<value>, <compareTo>)
greater('<value>', '<compareTo>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 整数、浮動小数点数、混合 | 2 番目の値より大きいかどうかを調べる 1 番目の値 |
< compareTo> | イエス | それぞれ整数、浮動小数点数、混合 | 比較する値 |
戻り値 | タイプ | 説明 |
---|---|---|
正 または 誤 | ブール値 | 1 番目の値が 2 番目の値より大きい場合は true を返します。 1 番目の値が 2 番目の値以下の場合は false を返します。 |
例
これらの例は、1 番目の値が 2 番目の値より大きいかどうかを調べます。
greater(10, 5)
greater('apple', 'banana')
次の結果を返します。
- 1 番目の例:
true
- 2 番目の例:
false
greaterOrEquals
1 番目の値が 2 番目の値以上かどうかを調べます。 1 番目の値が大きいか等しい場合は true を返し、小さい場合は false を返します。
greaterOrEquals(<value>, <compareTo>)
greaterOrEquals('<value>', '<compareTo>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 整数、浮動小数点数、混合 | 2 番目の値以上かどうかを調べる 1 番目の値。 |
< compareTo> | イエス | それぞれ整数、浮動小数点数、混合 | 比較する値 |
戻り値 | タイプ | 説明 |
---|---|---|
正 または 誤 | ブール値 | 1 番目の値が 2 番目の値より大きいか等しい場合は true を返します。 1 番目の値が 2 番目より小さい場合は false を返します。 |
例
これらの例は、1 番目の値が 2 番目の値以上かどうかを調べます。
greaterOrEquals(5, 5)
greaterOrEquals('apple', 'banana')
次の結果を返します。
- 1 番目の例:
true
- 2 番目の例:
false
guid
グローバル一意識別子 (GUID) を文字列として生成します (例: "c2ecc88d-88c8-4096-912c-d6f2e2b138ce")。
guid()
既定の "D" 形式 (ハイフンで区切られた 32 桁) 以外の GUID 形式を指定することもできます。
guid('<format>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 形式> | いいえ | 糸 | 返される GUID の単一の形式指定子。 規定の形式は "D" ですが、"N"、"D"、"B"、"P"、"X" も指定できます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< GUID-value> | 糸 | ランダムに生成された GUID |
例
この例は同じ GUID を生成しますが、32 桁で、ハイフンによって区切られており、かっこで囲まれています。
guid('P')
返される結果: "(c2ecc88d-88c8-4096-912c-d6f2e2b138ce)"
I
もし
式が true か false かを調べます。 結果に基づき、指定された値を返します。 パラメーターは左から右へ評価されます。
if(<expression>, <valueIfTrue>, <valueIfFalse>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 式 (expression)> | イエス | ブール値 | 調べる式。 |
< valueIfTrue> | イエス | [任意] | 式が true の場合に返す値 |
< 偽の場合の値> | イエス | [任意] | 式が false の場合に返す値 |
戻り値 | タイプ | 説明 |
---|---|---|
< specified-return-value> | [任意] | 式が true か false かに基づいて返すように指定された値 |
例
この例は、指定した式が true を返すため "yes"
を返します。
それ以外の場合、この例は "no"
を返します。
if(equals(1, 1), 'yes', 'no')
indexOf
部分文字列の開始位置またはインデックス値を返します。 この関数は大文字と小文字を区別せず、インデックスは値 0 から始まります。
indexOf('<text>', '<searchText>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< テキスト> | イエス | 糸 | 検索する部分文字列を含む文字列 |
< searchText> | イエス | 糸 | 検索する部分文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< インデックス値> | 整数 | 指定した部分文字列の開始位置またはインデックス値。 文字列が見つからない場合は、値 -1 を返します。 |
例
この例は、文字列 "hello world" 内で部分文字列 "world" の開始インデックス値を検索します。
indexOf('hello world', 'world')
返される結果: 6
整数 (int)
整数の文字列バージョンを実際の整数値に変換します。
int('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | 変換する整数の文字列バージョン。 最小値と最大値は、整数データ型の制限と同じです。 |
戻り値 | タイプ | 説明 |
---|---|---|
< integer-result> | 整数 | 指定した文字列の整数バージョン。 最小値と最大値は、整数データ型の制限と同じです。 |
例
この例は、文字列 "10" の整数バージョンを作成します。
int('10')
返される結果: 10
isFloat
文字列が浮動小数点数かどうかを示すブール値を返します。 既定では、この関数は浮動小数点形式にインバリアント カルチャを使用します。 他のロケール固有の形式で表される浮動小数点数を識別するため、必要に応じて RFC 4646 ロケール コードを指定できます。
isFloat('<string>', '<locale>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | チェックする文字列 |
< ロケール> | いいえ | 糸 | 使用する RFC 4646 ロケール コード |
戻り値 | タイプ | 説明 |
---|---|---|
< boolean-result> | ブール値 | 文字列が浮動小数点数かどうかを示すブール値 |
例 1
次の例は、文字列がインバリアント カルチャの浮動小数点数かどうかを確認します。
isFloat('10,000.00')
返される結果: true
例 2
次の例は、文字列がドイツ語ロケールの浮動小数点数かどうかを確認します。
isFloat('10.000,00', 'de-DE')
返される結果: true
isInt
文字列が整数かどうかを示すブール値を返します。
isInt('<string>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 糸> | イエス | 糸 | チェックする文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< boolean-result> | ブール値 | 文字列が整数かどうかを示すブール値 |
例
次の例は、文字列が整数かどうかを確認します。
isInt('10')
返される結果: true
項目
配列に対する繰り返しアクションの内部で使うと、アクションの現在の繰り返しの間に配列の現在の項目を返します。 その項目のプロパティから値を取得することもできます。
item()
戻り値 | タイプ | 説明 |
---|---|---|
< current-array-item> | [任意] | アクションの現在の繰り返しに対する配列内の現在の項目 |
例
この例は、for-each ループの現在の繰り返しの内部で "Send_an_email" アクションに対する現在のメッセージから body
要素を取得します。
item().body
items
for-each ループの各サイクルから現在の項目を返します。 この関数は、for-each ループの内部で使います。
items('<loopName>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< loopName> | イエス | 糸 | for-each ループの名前 |
戻り値 | タイプ | 説明 |
---|---|---|
< アイテム> | [任意] | 指定した for-each ループの現在のサイクルからの項目 |
例
この例は、指定した for-each ループから現在の項目を取得します。
items('myForEachLoopName')
iterationIndexes
Until ループ内の現在の繰り返しのインデックス値を返します。 この関数は、入れ子になった Until ループ内で使用できます。
iterationIndexes('<loopName>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< loopName> | イエス | 糸 | Until ループの名前 |
戻り値 | タイプ | 説明 |
---|---|---|
< インデックス> | 整数 | 指定された Until ループ内の現在の繰り返しのインデックス値 |
例
この例では、カウンター変数を作成し、カウンター値が 5 に達するまで、Until ループ内の各繰り返しの間に 1 つずつその変数を増分します。 また、この例では各繰り返しの現在のインデックスを追跡する変数も作成します。 Until ループで、各繰り返しの間にカウンター値を増分し、カウンター値を現在のインデックス値に割り当ててから、カウンター値を増分します。 ループ内で、この例は、iterationIndexes
関数を使用して現在の反復インデックスを参照します。
iterationIndexes('Until_Max_Increment')
{
"actions": {
"Create_counter_variable": {
"type": "InitializeVariable",
"inputs": {
"variables": [
{
"name": "myCounter",
"type": "Integer",
"value": 0
}
]
},
"runAfter": {}
},
"Create_current_index_variable": {
"type": "InitializeVariable",
"inputs": {
"variables": [
{
"name": "myCurrentLoopIndex",
"type": "Integer",
"value": 0
}
]
},
"runAfter": {
"Create_counter_variable": [ "Succeeded" ]
}
},
"Until_Max_Increment": {
"type": "Until",
"actions": {
"Assign_current_index_to_counter": {
"type": "SetVariable",
"inputs": {
"name": "myCurrentLoopIndex",
"value": "@variables('myCounter')"
},
"runAfter": {
"Increment_variable": [ "Succeeded" ]
}
},
"Compose": {
"inputs": "'Current index: ' @{iterationIndexes('Until_Max_Increment')}",
"runAfter": {
"Assign_current_index_to_counter": [
"Succeeded"
]
},
"type": "Compose"
},
"Increment_variable": {
"type": "IncrementVariable",
"inputs": {
"name": "myCounter",
"value": 1
},
"runAfter": {}
}
},
"expression": "@equals(variables('myCounter'), 5)",
"limit": {
"count": 60,
"timeout": "PT1H"
},
"runAfter": {
"Create_current_index_variable": [ "Succeeded" ]
}
}
}
}
J
json
文字列または XML に対する JSON (JavaScript Object Notation) 型の値、オブジェクト、またはオブジェクトの配列を返します。
json('<value>')
json(xml('value'))
Von Bedeutung
出力の構造を定義する XML スキーマがない場合、入力によっては、予期される形式と大幅に異なる構造の結果が関数から返されることがあります。
この動作により、(重要なビジネス システムやソリューションなどの) 明確に定義されたコントラクトに出力が従う必要があるシナリオでは、この関数は適していません。
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 文字列、XML | 変換する文字列または XML |
戻り値 | タイプ | 説明 |
---|---|---|
< JSON-result> | JSON ネイティブの型、オブジェクト、または配列 | 入力文字列または XML からの JSON ネイティブの型の値、オブジェクト、またはオブジェクトの配列。 - ルート要素に 1 つの子要素を含む XML を渡すと、この関数はその子要素に対して 1 つの JSON オブジェクトを返します。 - ルート要素に複数の子要素を含む XML を渡すと、この関数はそれらの子要素に対する JSON オブジェクトを含む 1 つの配列を返します。 - 文字列が null 値である場合、この関数は空のオブジェクトを返します。 |
例 1
この例では、次の文字列を JSON 値に変換します。
json('[1, 2, 3]')
返される結果: [1, 2, 3]
例 2
この例では、次の文字列を JSON に変換します。
json('{"fullName": "Sophia Owen"}')
返される結果:
{
"fullName": "Sophia Owen"
}
例 3
この例では、json()
および xml()
の各関数を使用して、ルート要素に 1 つの子要素を含む XML を、その子要素に対する person
という名前の JSON オブジェクトに変換します。
json(xml('<?xml version="1.0"?> <root> <person id="1"> <name>Sophia Owen</name> <occupation>Engineer</occupation> </person> </root>'))
返される結果:
{
"?xml": {
"@version": "1.0"
},
"root": {
"person": {
"@id": "1",
"name": "Sophia Owen",
"occupation": "Engineer"
}
}
}
例 4
この例では、json()
および xml()
の各関数を使用して、ルート要素に複数の子要素を含む XML を、それらの子要素に対する JSON オブジェクトを含む person
という名前の配列に変換します。
json(xml('<?xml version="1.0"?> <root> <person id="1"> <name>Sophia Owen</name> <occupation>Engineer</occupation> </person> <person id="2"> <name>John Doe</name> <occupation>Engineer</occupation> </person> </root>'))
返される結果:
{
"?xml": {
"@version": "1.0"
},
"root": {
"person": [
{
"@id": "1",
"name": "Sophia Owen",
"occupation": "Engineer"
},
{
"@id": "2",
"name": "John Doe",
"occupation": "Engineer"
}
]
}
}
intersection
指定したコレクションすべてに共通する項目 "のみ" を含むコレクションを返します。 結果に含まれるためには、この関数に渡されるすべてのコレクションに項目が含まれる必要があります。 1 つまたは複数の項目が同じ名前である場合は、その名前を持つ最後の項目が結果に含まれます。
intersection([<collection1>], [<collection2>], ...)
intersection('<collection1>', '<collection2>', ...)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< collection1>, <collection2>, ... | イエス | 配列またはオブジェクト、両方ともは不可 | 共通項目 "のみ" を抽出するコレクション |
戻り値 | タイプ | 説明 |
---|---|---|
< common-items> | それぞれ、配列またはオブジェクト | 指定したコレクションすべてに共通する項目のみを含むコレクション |
例
この例は、次のすべての配列に共通する項目を検索します。
intersection(createArray(1, 2, 3), createArray(101, 2, 1, 10), createArray(6, 8, 1, 2))
そして、それらの項目 "[1, 2]
" を含む配列を返します。
参加
配列のすべての項目を含み、各文字が "区切り記号" で区切られた文字列を返します。
join([<collection>], '<delimiter>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< コレクション> | イエス | Array | 結合する項目を含む配列 |
< デリミタ> | イエス | 糸 | 結果の文字列内の各文字の間に挿入される区切り記号 |
戻り値 | タイプ | 説明 |
---|---|---|
< char1><delimiter><char2><delimiter>... | 糸 | 指定した配列内のすべての項目から作成された結果の文字列。 注: この結果の長さは 104,857,600 文字以下にする必要があります。 |
例
この例は、指定した文字で区切られた、次の配列のすべての項目を含む文字列を作成します。
join(createArray('a', 'b', 'c'), '.')
返される結果: "a.b.c"
L
last
コレクションから最後の項目を返します。
last('<collection>')
last([<collection>])
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< コレクション> | イエス | 文字列、配列 | 最後の項目を検索するコレクション |
戻り値 | タイプ | 説明 |
---|---|---|
< 最後の収集項目> | それぞれ文字列、配列 | コレクション内の最後の項目 |
例
これらの例は、以下のコレクション内の最後の項目を検索します。
last('abcd')
last(createArray(0, 1, 2, 3))
次の結果を返します。
- 1 番目の例:
"d"
- 2 番目の例:
3
lastIndexOf
部分文字列の最後の出現箇所の開始位置またはインデックス値を返します。 この関数は大文字と小文字を区別せず、インデックスは値 0 から始まります。
lastIndexOf('<text>', '<searchText>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< テキスト> | イエス | 糸 | 検索する部分文字列を含む文字列 |
< searchText> | イエス | 糸 | 検索する部分文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< 終了インデックス値> | 整数 | 指定された部分文字列の最後の出現箇所の開始位置またはインデックス値。 |
文字列または部分文字列の値が空の場合は、以下の動作が発生します。
文字列の値のみが空の場合、関数により
-1
が返されます。文字列と部分文字列の値がどちらも空の場合、関数により
0
が返されます。部分文字列の値のみが空の場合、関数により文字列の長さから 1 を引いた値が返されます。
例
この例では、文字列 world
内の部分文字列 hello world hello world
の最後の出現箇所の開始インデックス値を見つけます。 返される結果は 18
です。
lastIndexOf('hello world hello world', 'world')
この例には部分文字列のパラメーターがなく、入力文字列の値 (22
) から 1 を引いた値は 0 より大きいため、23
の値が返されます。
lastIndexOf('hello world hello world', '')
length
コレクション内の項目の数を返します。
length('<collection>')
length([<collection>])
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< コレクション> | イエス | 文字列、配列 | 項目を数えるコレクション |
戻り値 | タイプ | 説明 |
---|---|---|
< 長さまたは数> | 整数 | コレクション内の項目数 |
例
これらの例は、次のコレクション内の項目の数をカウントします。
length('abcd')
length(createArray(0, 1, 2, 3))
返される結果: 4
less
1 番目の値が 2 番目の値より小さいかどうかを調べます。 1 番目の値の方が小さい場合は true を返し、小さくないい場合は false を返します。
less(<value>, <compareTo>)
less('<value>', '<compareTo>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 整数、浮動小数点数、混合 | 2 番目の値より小さいかどうかを調べる 1 番目の値 |
< compareTo> | イエス | それぞれ整数、浮動小数点数、混合 | 比較する項目 |
戻り値 | タイプ | 説明 |
---|---|---|
正 または 誤 | ブール値 | 1 番目の値の方が 2 番目より小さい場合は true を返します。 1 番目の値が 2 番目の値以上の場合は false を返します。 |
例
これらの例は、1 番目の値が 2 番目の値より小さいかどうかを調べます。
less(5, 10)
less('banana', 'apple')
次の結果を返します。
- 1 番目の例:
true
- 2 番目の例:
false
lessOrEquals
1 番目の値が 2 番目の値以下かどうかを調べます。 1 番目の値が小さいか等しい場合は true を返し、大きい場合は false を返します。
lessOrEquals(<value>, <compareTo>)
lessOrEquals('<value>', '<compareTo>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 整数、浮動小数点数、混合 | 2 番目の値以下かどうかを調べる 1 番目の値。 |
< compareTo> | イエス | それぞれ整数、浮動小数点数、混合 | 比較する項目 |
戻り値 | タイプ | 説明 |
---|---|---|
正 または 誤 | ブール値 | 1 番目の値が 2 番目の値より小さいか等しい場合は true を返します。 1 番目の値が 2 番目の値より大きい場合は false を返します。 |
例
これらの例は、1 番目の値が 2 番目の値以下かどうかを調べます。
lessOrEquals(10, 10)
lessOrEquals('apply', 'apple')
次の結果を返します。
- 1 番目の例:
true
- 2 番目の例:
false
listCallbackUrl
トリガーまたはアクションを呼び出す "コールバック URL" を返します。 この関数は、HttpWebhook および ApiConnectionWebhook コネクタ型に対するトリガーとアクションでのみ機能し、Manual、Recurrence、HTTP、および APIConnection 型では機能しません。
listCallbackUrl()
戻り値 | タイプ | 説明 |
---|---|---|
< callback-URL> | 糸 | トリガーまたはアクションに対するコールバック URL |
例
この例は、この関数が返すことのあるコールバック URL の例を示します。
"https://prod-01.westus.logic.azure.com:443/workflows/<*workflow-ID*>/triggers/manual/run?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=<*signature-ID*>"
エム
max
両端を含む数値のリストまたは配列から最大の値を返します。
max(<number1>, <number2>, ...)
max([<number1>, <number2>, ...])
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< number1>, <number2>, ... | イエス | 整数、浮動小数点数、または両方 | 最大値を取得する数値のセット |
[<number1>, <number2>, ...] | イエス | 配列 - 整数、浮動小数点数、または両方 | 最大値を取得する数値の配列 |
戻り値 | タイプ | 説明 |
---|---|---|
< max-value> | 整数または浮動小数点数 | 指定した配列内または数値セット内で最大の値 |
例
これらの例は、数値のセットと配列から最大値を取得します。
max(1, 2, 3)
max(createArray(1, 2, 3))
返される結果: 3
min
数値のセットまたは配列から最小の値を返します。
min(<number1>, <number2>, ...)
min([<number1>, <number2>, ...])
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< number1>, <number2>, ... | イエス | 整数、浮動小数点数、または両方 | 最小値を取得する数値のセット |
[<number1>, <number2>, ...] | イエス | 配列 - 整数、浮動小数点数、または両方 | 最小値を取得する数値の配列 |
戻り値 | タイプ | 説明 |
---|---|---|
< min-value> | 整数または浮動小数点数 | 指定した数値セット内または配列内で最小の値 |
例
これらの例は、数値のセットと配列で最小の値を取得します。
min(1, 2, 3)
min(createArray(1, 2, 3))
返される結果: 1
モッド
2 つの数値を除算した剰余を返します。 整数の結果を取得するには、div() をご覧ください。
mod(<dividend>, <divisor>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 配当> | イエス | 整数または浮動小数点数 | divisor によって除算される値。 |
< 除数> | イエス | 整数または浮動小数点数 | dividend を除算する値。0 にすることはできません |
戻り値 | タイプ | 説明 |
---|---|---|
< modulo-result> | 整数または浮動小数点数 | 1 番目の数値を 2 番目の数値で除算した剰余 |
例 1
この例は、1 番目の数値を 2 番目の数値で除算します。
mod(3, 2)
返される結果: 1
例 2
この例では、一方または両方の値が負の場合、結果は被除数の符号と一致することを示しています。
mod(-5, 2)
mod(4, -3)
この例では、次の結果が返されます。
- 1 番目の例:
-1
- 2 番目の例:
1
mul
2 つの数値を乗算した積を返します。
mul(<multiplicand1>, <multiplicand2>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< multiplicand1> | イエス | 整数または浮動小数点数 | multiplicand2 と乗算する値 |
< multiplicand2> | イエス | 整数または浮動小数点数 | multiplicand1 と乗算する値 |
戻り値 | タイプ | 説明 |
---|---|---|
< product-result> | 整数または浮動小数点数 | 1 番目の数値と 2 番目の数値を乗算した積 |
例
これらの例は、1 番目の数値と 2 番目の数値を乗算します。
mul(1, 2)
mul(1.5, 2)
次の結果を返します。
- 1 番目の例:
2
- 2 番目の例:
3
multipartBody
複数の部分を持つアクションの出力の特定の部分に対する本文を返します。
multipartBody('<actionName>', <index>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< actionName> | イエス | 糸 | 複数の部分を含む出力を持つアクションの名前 |
< インデックス> | イエス | 整数 | 取得する部分のインデックス値 |
戻り値 | タイプ | 説明 |
---|---|---|
< 本体> | 糸 | 指定した部分の本文 |
N
ない
式が false かどうかを調べます。 式が false の場合は true を返し、true の場合は false を返します。
not(<expression>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 式 (expression)> | イエス | ブール値 | 調べる式。 |
戻り値 | タイプ | 説明 |
---|---|---|
正 または 誤 | ブール値 | 式が false の場合は true を返します。 式が true の場合は false を返します。 |
例 1
これらの例は、指定した式が false かどうかを調べます。
not(false)
not(true)
次の結果を返します。
- 1 番目の例: 式が false なので、関数は
true
を返します。 - 2 番目の例: 式が true なので、関数は
false
を返します。
例 2
これらの例は、指定した式が false かどうかを調べます。
not(equals(1, 2))
not(equals(1, 1))
次の結果を返します。
- 1 番目の例: 式が false なので、関数は
true
を返します。 - 2 番目の例: 式が true なので、関数は
false
を返します。
nthIndexOf
文字列内での部分文字列の n 番目の出現箇所の開始位置またはインデックス値を返します。
nthIndexOf('<text>', '<searchText>', <occurrence>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< テキスト> | イエス | 糸 | 検索する部分文字列を含む文字列 |
< searchText> | イエス | 糸 | 検索する部分文字列 |
< 発生> | イエス | 整数 | 検索する部分文字列の "n" 番目の出現箇所を示す数値。 ocurrence が負の場合は、末尾から検索を開始します。 |
戻り値 | タイプ | 説明 |
---|---|---|
< インデックス値> | 整数 | 指定された部分文字列の n 番目の出現箇所の開始位置またはインデックス値。 部分文字列が見つからない、または部分文字列の出現回数が n 未満の場合は、-1 を返します。 |
例
nthIndexOf('123456789123465789', '1', 1) // Returns `0`.
nthIndexOf('123456789123465789', '1', 2) // Returns `9`.
nthIndexOf('123456789123465789', '12', 2) // Returns `9`.
nthIndexOf('123456789123465789', '6', 4) // Returns `-1`.
O
or
少なくとも 1 つの式が true かどうかを調べます。 少なくとも 1 つの式が true の場合は true を返し、すべての式が false の場合は false を返します。
or(<expression1>, <expression2>, ...)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< expression1>, <expression2>, ... | イエス | ブール値 | 調べる式 |
戻り値 | タイプ | 説明 |
---|---|---|
正 または 誤 | ブール値 | 少なくとも 1 つの式が true の場合は true を返します。 すべての式が false の場合は false を返します。 |
例 1
これらの例は、少なくとも 1 つの式が true かどうかを調べます。
or(true, false)
or(false, false)
次の結果を返します。
- 1 番目の例: 少なくとも 1 つの式が true なので、関数は
true
を返します。 - 2 番目の例: 両方の式が false なので、関数は
false
を返します。
例 2
これらの例は、少なくとも 1 つの式が true かどうかを調べます。
or(equals(1, 1), equals(1, 2))
or(equals(1, 2), equals(1, 3))
次の結果を返します。
- 1 番目の例: 少なくとも 1 つの式が true なので、関数は
true
を返します。 - 2 番目の例: 両方の式が false なので、関数は
false
を返します。
outputs
実行時のアクションの出力を返します。
outputs('<actionName>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< actionName> | イエス | 糸 | 取得するアクションの出力の名前 |
戻り値 | タイプ | 説明 |
---|---|---|
< アウトプット> | 糸 | 指定したアクションからの出力 |
例
この例は、X アクション Get user
からの出力を取得します。
outputs('Get_user')
返される結果:
{
"statusCode": 200,
"headers": {
"Pragma": "no-cache",
"Vary": "Accept-Encoding",
"x-ms-request-id": "a916ec8f52211265d98159adde2efe0b",
"X-Content-Type-Options": "nosniff",
"Timing-Allow-Origin": "*",
"Cache-Control": "no-cache",
"Date": "Mon, 09 Apr 2018 18:47:12 GMT",
"Set-Cookie": "ARRAffinity=b9400932367ab5e3b6802e3d6158afffb12fcde8666715f5a5fbd4142d0f0b7d;Path=/;HttpOnly;Domain=twitter-wus.azconn-wus.p.azurewebsites.net",
"X-AspNet-Version": "4.0.30319",
"X-Powered-By": "ASP.NET",
"Content-Type": "application/json; charset=utf-8",
"Expires": "-1",
"Content-Length": "339"
},
"body": {
"FullName": "Contoso Corporation",
"Location": "Generic Town, USA",
"Id": 283541717,
"UserName": "ContosoInc",
"FollowersCount": 172,
"Description": "Leading the way in transforming the digital workplace.",
"StatusesCount": 93,
"FriendsCount": 126,
"FavouritesCount": 46,
"ProfileImageUrl": "https://pbs.twimg.com/profile_images/908820389907722240/gG9zaHcd_400x400.jpg"
}
}
P
パラメーター
ワークフローの定義で記述されているパラメーターの値を返します。
parameters('<parameterName>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< parameterName> | イエス | 糸 | 値を取得するパラメーターの名前。 |
戻り値 | タイプ | 説明 |
---|---|---|
< パラメーター値> | [任意] | 指定したパラメーターの値 |
例
次のような JSON 値があるものとします。
{
"fullName": "Sophia Owen"
}
この例は、指定したパラメーターの値を取得します。
parameters('fullName')
返される結果: "Sophia Owen"
parseDateTime
タイムスタンプを含む文字列からタイムスタンプを返します。
parseDateTime('<timestamp>', '<locale>'?, '<format>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< ロケール> | いいえ | 糸 | 使用するロケール。 指定しない場合、既定のロケールは en-us です。 ロケールが有効な値でない場合は、エラーが生成されます。 |
< 形式> | いいえ | 糸 | 1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が指定されていない場合は、指定されたロケールと互換性のある複数の形式で解析を試みます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< parsed-timestamp> | 糸 | "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) の解析済みタイムスタンプです。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 |
例
parseDateTime('20/10/2014', 'fr-fr') // Returns '2014-10-20T00:00:00.0000000'.
parseDateTime('20 octobre 2010', 'fr-FR') // Returns '2010-10-20T00:00:00.0000000'.
parseDateTime('martes 20 octubre 2020', 'es-es') // Returns '2020-10-20T00:00:00.0000000'.
parseDateTime('21052019', 'fr-fr', 'ddMMyyyy') // Returns '2019-05-21T00:00:00.0000000'.
parseDateTime('20190521', 'fr-fr', 'yyyyMMdd') // Returns '2019-05-21T00:00:00.0000000'.
parseDateTime('10/20/2014 15h', 'en-US', 'MM/dd/yyyy HH\h') // Returns '2014-10-20T15:00:00.0000000'.
R
ランド
指定した範囲からランダムな整数を返します。開始側の端のみを含みます。
rand(<minValue>, <maxValue>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< minValue> | イエス | 整数 | 範囲に含まれる最小の整数 |
< maxValue> | イエス | 整数 | 関数が返すことのできる範囲内で最も大きい整数の次の整数 |
戻り値 | タイプ | 説明 |
---|---|---|
< random-result> | 整数 | 指定した範囲から返されるランダムな整数 |
例
この例は、指定した範囲 (最大値は除きます) からランダムな整数を取得します。
rand(1, 5)
結果として次のいずれかの整数が返ります: 1
、2
、3
、4
範囲
指定した整数から始まる整数の配列を返します。
range(<startIndex>, <count>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< startIndex> | イエス | 整数 | 最初の項目として配列を開始する整数値 |
< 数える> | イエス | 整数 | 配列内の整数の数。
count パラメーター値は、10 万を超えない正の整数である必要があります。 注: startIndex 値と count 値の合計は、2,147,483,647 以下である必要があります。 |
戻り値 | タイプ | 説明 |
---|---|---|
[<range-result>] | Array | 指定したインデックスから始まる整数の配列 |
例
この例は、指定したインデックスから始まり、指定された数の整数を含む、整数の配列を作成します。
range(1, 4)
返される結果: [1, 2, 3, 4]
プロパティを削除する
オブジェクトからプロパティを削除し、更新されたオブジェクトを返します。 削除しようとしたプロパティが存在しない場合、この関数は元のオブジェクトを返します。
removeProperty(<object>, '<property>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< オブジェクト> | イエス | オブジェクト | プロパティを削除する JSON オブジェクト |
< 財産> | イエス | 糸 | 削除するプロパティの名前 |
戻り値 | タイプ | 説明 |
---|---|---|
< 更新されたオブジェクト> | オブジェクト | 指定したプロパティを含まない更新された JSON オブジェクト |
既存のプロパティから子プロパティを削除するには、次の構文を使用します。
removeProperty(<object>['<parent-property>'], '<child-property>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< オブジェクト> | イエス | オブジェクト | プロパティを削除する JSON オブジェクト |
< parent-property> | イエス | 糸 | 子プロパティを削除する親プロパティの名前 |
< 子プロパティ> | イエス | 糸 | 削除する子プロパティの名前 |
戻り値 | タイプ | 説明 |
---|---|---|
< 更新されたオブジェクト> | オブジェクト | 子プロパティが削除された、更新済みの JSON オブジェクト |
例 1
この例では、middleName
関数を使用して文字列から JSON に変換される JSON オブジェクトから プロパティを削除し、更新されたオブジェクトを返します。
removeProperty(json('{ "firstName": "Sophia", "middleName": "Anne", "surName": "Owen" }'), 'middleName')
現在の JSON オブジェクトを次に示します。
{
"firstName": "Sophia",
"middleName": "Anne",
"surName": "Owen"
}
更新された JSON オブジェクトを次に示します。
{
"firstName": "Sophia",
"surName": "Owen"
}
例 2
この例では、middleName
関数を使用して文字列から JSON に変換される JSON オブジェクトの customerName
親プロパティから 子プロパティを削除し、更新されたオブジェクトを返します。
removeProperty(json('{ "customerName": { "firstName": "Sophia", "middleName": "Anne", "surName": "Owen" } }')['customerName'], 'middleName')
現在の JSON オブジェクトを次に示します。
{
"customerName": {
"firstName": "Sophia",
"middleName": "Anne",
"surName": "Owen"
}
}
更新された JSON オブジェクトを次に示します。
{
"customerName": {
"firstName": "Sophia",
"surName": "Owen"
}
}
置換
部分文字列を指定した文字列で置換し、結果の文字列を返します。 この関数は、大文字と小文字を区別します。
replace('<text>', '<oldText>', '<newText>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< テキスト> | イエス | 糸 | 置換する部分文字列を含む文字列 |
< oldText> | イエス | 糸 | 置換前の部分文字列 |
< newText> | イエス | 糸 | 置換後の文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< updated-text> | 糸 | 部分文字列を置換した後の更新された文字列 部分文字列が見つからない場合は、元の文字列を返します。 |
例
この例は、文字列 "the old string" で部分文字列 "old" を検索し、"old" を "new" に置き換えます。
replace('the old string', 'old', 'new')
返される結果: "the new string"
結果
指定されたスコープ付きアクション内の最上位レベルのアクション (For_each
、Until
、Scope
アクションなど) からの結果を返します。
result()
関数は、単一のパラメーター (スコープの名前) を受け取り、そのスコープ内の第 1 レベルのアクションの情報を含んだ配列を返します。 これらのアクションのオブジェクトには、actions()
関数によって返される属性と同じ属性 (アクションの開始時刻、終了時刻、状態、入力、相関 ID、出力など) が含まれます。
注
この関数では、スコープ付きアクション内の第 1 レベルのアクションからの情報のみが返されます。switch アクションや condition アクションなど、より深い入れ子のアクションの情報は返されません。
たとえば、この関数を使用すると、失敗したアクションの結果を取得して、例外の診断や処理に役立てることができます。 詳細については「エラーのコンテキストと結果を取得する」をご覧ください。
result('<scopedActionName>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< scopedActionName> | イエス | 糸 | スコープ付きアクションの名前です。最上位レベルのアクションの入力と出力がこのスコープに含まれます |
戻り値 | タイプ | 説明 |
---|---|---|
< array-object> | Array オブジェクト | 指定されたスコープ内にある各最上位アクションの入力と出力の配列を格納した配列 |
例
この例では、For_each
アクションで result()
関数を使用して、Compose
ループ内にある HTTP アクションの各繰り返しからの入力と出力を返します。
{
"actions": {
"Compose": {
"inputs": "@result('For_each')",
"runAfter": {
"For_each": [
"Succeeded"
]
},
"type": "compose"
},
"For_each": {
"actions": {
"HTTP": {
"inputs": {
"method": "GET",
"uri": "https://httpstat.us/200"
},
"runAfter": {},
"type": "Http"
}
},
"foreach": "@triggerBody()",
"runAfter": {},
"type": "Foreach"
}
}
}
以下に、返される配列の例を示します。ここで、外側の outputs
オブジェクトに、For_each
アクション内にあるアクションの各繰り返しからの入力と出力が格納されています。
[
{
"name": "HTTP",
"outputs": [
{
"name": "HTTP",
"inputs": {
"uri": "https://httpstat.us/200",
"method": "GET"
},
"outputs": {
"statusCode": 200,
"headers": {
"X-AspNetMvc-Version": "5.1",
"Access-Control-Allow-Origin": "*",
"Cache-Control": "private",
"Date": "Tue, 20 Aug 2019 22:15:37 GMT",
"Set-Cookie": "ARRAffinity=0285cfbea9f2ee7",
"Server": "Microsoft-IIS/10.0",
"X-AspNet-Version": "4.0.30319",
"X-Powered-By": "ASP.NET",
"Content-Length": "0"
},
"startTime": "2019-08-20T22:15:37.6919631Z",
"endTime": "2019-08-20T22:15:37.95762Z",
"trackingId": "6bad3015-0444-4ccd-a971-cbb0c99a7.....",
"clientTrackingId": "085863526764.....",
"code": "OK",
"status": "Succeeded"
}
},
{
"name": "HTTP",
"inputs": {
"uri": "https://httpstat.us/200",
"method": "GET"
},
"outputs": {
"statusCode": 200,
"headers": {
"X-AspNetMvc-Version": "5.1",
"Access-Control-Allow-Origin": "*",
"Cache-Control": "private",
"Date": "Tue, 20 Aug 2019 22:15:37 GMT",
"Set-Cookie": "ARRAffinity=0285cfbea9f2ee7",
"Server": "Microsoft-IIS/10.0",
"X-AspNet-Version": "4.0.30319",
"X-Powered-By": "ASP.NET",
"Content-Length": "0"
},
"startTime": "2019-08-20T22:15:37.6919631Z",
"endTime": "2019-08-20T22:15:37.95762Z",
"trackingId": "9987e889-981b-41c5-aa27-f3e0e59bf69.....",
"clientTrackingId": "085863526764.....",
"code": "OK",
"status": "Succeeded"
}
}
]
}
]
reverse
コレクション内の項目の順序を逆にします。 sort() とともにこの関数を使用すると、コレクションを降順で並べ替えることができます。
reverse([<collection>])
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< コレクション> | イエス | Array | 順序を逆にするコレクション |
戻り値 | タイプ | 説明 |
---|---|---|
[<更新されたコレクション>] | Array | 順序を逆にしたコレクション |
例
次の例は、整数の配列の順序を逆にします。
reverse(createArray(0, 1, 2, 3))
次の配列を返します: [3,2,1,0]
S
setProperty
JSON オブジェクトのプロパティの値を設定し、更新されたオブジェクトを返します。 設定しようとしたプロパティが存在しない場合、そのプロパティがオブジェクトに追加されます。 新しいプロパティを追加するには、addProperty() 関数を使用します。
setProperty(<object>, '<property>', <value>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< オブジェクト> | イエス | オブジェクト | プロパティを設定する JSON オブジェクト |
< 財産> | イエス | 糸 | 設定する既存または新規のプロパティの名前 |
< 価値> | イエス | [任意] | 指定したプロパティに設定する値 |
子オブジェクト内に子プロパティを設定するには、入れ子になった setProperty()
呼び出しを代わりに使用します。 それ以外の場合、関数は子オブジェクトだけを出力として返します。
setProperty(<object>, '<parent-property>', setProperty(<object>['parentProperty'], '<child-property>', <value>))
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< オブジェクト> | イエス | オブジェクト | プロパティを設定する JSON オブジェクト |
< parent-property> | イエス | 糸 | 子プロパティを設定する親プロパティの名前 |
< 子プロパティ> | イエス | 糸 | 設定する子プロパティの名前 |
< 価値> | イエス | [任意] | 指定したプロパティに設定する値 |
戻り値 | タイプ | 説明 |
---|---|---|
< 更新されたオブジェクト> | オブジェクト | プロパティが設定された更新後の JSON オブジェクト |
例 1
この例では surName
関数を使用して文字列から JSON に変換される JSON オブジェクトに プロパティを設定します。 この関数は、指定された値をこのプロパティに割り当て、更新されたオブジェクトを返します。
setProperty(json('{ "firstName": "Sophia", "surName": "Owen" }'), 'surName', 'Hartnett')
現在の JSON オブジェクトを次に示します。
{
"firstName": "Sophia",
"surName": "Owen"
}
更新された JSON オブジェクトを次に示します。
{
"firstName": "Sophia",
"surName": "Hartnett"
}
例 2
この例では、surName
関数を使用して文字列から JSON に変換される JSON オブジェクトの customerName
親プロパティに 子プロパティを設定します。 この関数は、指定された値をこのプロパティに割り当て、更新されたオブジェクトを返します。
setProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }'), 'customerName', setProperty(json('{ "customerName": { "firstName": "Sophia", "surName": "Owen" } }')['customerName'], 'surName', 'Hartnett'))
現在の JSON オブジェクトを次に示します。
{
"customerName": {
"firstName": "Sophie",
"surName": "Owen"
}
}
更新された JSON オブジェクトを次に示します。
{
"customerName": {
"firstName": "Sophie",
"surName": "Hartnett"
}
}
スキップ
コレクションの先頭から項目を削除し、"他のすべて" の項目を返します。
skip([<collection>], <count>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< コレクション> | イエス | Array | 項目を削除するコレクション |
< 数える> | イエス | 整数 | 先頭から削除する項目の数を示す正の整数 |
戻り値 | タイプ | 説明 |
---|---|---|
[<更新されたコレクション>] | Array | 指定した項目を削除した後の更新されたコレクション |
例
この例は、指定した配列の先頭から 1 つの項目 (番号 0) を削除します。
skip(createArray(0, 1, 2, 3), 1)
そして、残りの項目を含む配列 [1,2,3]
を返します。
スライス
開始およびは終了位置または値を指定して部分文字列を返します。 「substring()」も参照してください。
slice('<text>', <startIndex>, <endIndex>?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< テキスト> | イエス | 糸 | 検索する部分文字列を含む文字列 |
< startIndex> | イエス | 整数 | 部分文字列の検索開始位置の 0 から始まる開始位置または値 - startIndex が文字列の長さよりも大きい場合は、空の文字列を返します。 - startIndex が負の場合は、文字列長と startindex を合計したインデックス値から検索を開始します。 |
< endIndex> | いいえ | 整数 | 部分文字列の検索終了位置の 0 から始まる終了位置または値。 終了インデックス値にある文字は検索に含まれません。 - endIndex が指定されていない、または文字列の長さを超える場合は、文字列の末尾まで検索します。 - endIndex が負の場合は、文字列の長さと endIndex を合計したインデックス値で検索を終了します。 |
戻り値 | タイプ | 説明 |
---|---|---|
< スライス結果> | 糸 | 見つかった部分文字列を含む新しい文字列 |
例
slice('Hello World', 2) // Returns 'llo World'.
slice('Hello World', 30) // Returns ''.
slice('Hello World', 10, 2) // Returns ''.
slice('Hello World', 0) // Returns 'Hello World'.
slice('Hello World', 2, 5) // Returns 'llo'.
slice('Hello World', 6, 20) // Returns 'World'.
slice('Hello World', -2) // Returns 'ld'.
slice('Hello World', 3, -1) // Returns 'lo Worl'.
slice('Hello World', 3, 3) // Returns ''.
並べ替え
コレクション内の項目を並べ替えます。 単純型を含む任意のキーを使用して、コレクション オブジェクトを並べ替えることができます。
sort([<collection>], <sortBy>?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< コレクション> | イエス | Array | 項目を並べ替えるコレクション |
< sortBy> | いいえ | 糸 | コレクション オブジェクトの並べ替えに使用するキー |
戻り値 | タイプ | 説明 |
---|---|---|
[<更新されたコレクション>] | Array | 並べ替えたコレクション |
例 1
次の例は、整数の配列を並べ替えます。
sort(createArray(2, 1, 0, 3))
次の配列を返します: [0,1,2,3]
例 2
次の例は、オブジェクトの配列をキー順に並べ替えます。
sort(createArray(json('{ "first": "Amalie", "last": "Rose" }'), json('{ "first": "Elise", "last": "Renee" }')), 'last')
次の配列を返します: [{ "first": "Elise", "last": "Renee" }, {"first": "Amalie", "last": "Rose" }')]
分割する
元の文字列で指定された区切り文字に基づいて、コンマで区切られた部分文字列を含む配列を返します。
split('<text>', '<delimiter>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< テキスト> | イエス | 糸 | 元の文字列で指定された区切り記号に基づいて部分文字列に分割する文字列 |
< デリミタ> | イエス | 糸 | 区切り記号として使用する、元の文字列内の文字 |
戻り値 | タイプ | 説明 |
---|---|---|
[<substring1>,<substring2>,...] | Array | コンマで区切られた、元の文字列からの部分文字列を含む配列 |
例 1
この例では、区切り記号として指定した文字に基づいて指定された文字列からの部分文字列を含む配列を作成します。
split('a_b_c', '_')
返される配列の結果: ["a","b","c"]
例 2
この例では、文字列に区切り記号が存在しない場合、1 つの要素を持つ配列が作成されます。
split('a_b_c', ' ')
返される配列の結果: ["a_b_c"]
startOfDay
タイムスタンプの日の開始日時を返します。
startOfDay('<timestamp>', '<format>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< 形式> | いいえ | 糸 |
1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< updated-timestamp> | 糸 | 指定したタイムスタンプの日の午前 0 時を表す日時文字列 |
例
この例は、次のタイムスタンプの日の開始を取得します。
startOfDay('2018-03-15T13:30:30Z')
返される結果: "2018-03-15T00:00:00.0000000Z"
startOfHour
タイムスタンプの時間の始まりを返します。
startOfHour('<timestamp>', '<format>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< 形式> | いいえ | 糸 |
1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< updated-timestamp> | 糸 | 指定したタイムスタンプの時刻の 0 分を表す日時文字列 |
例
この例は、次のタイムスタンプの時刻の開始を取得します。
startOfHour('2018-03-15T13:30:30Z')
返される結果: "2018-03-15T13:00:00.0000000Z"
startOfMonth
タイムスタンプの月の始まりを返します。
startOfMonth('<timestamp>', '<format>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< 形式> | いいえ | 糸 |
1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< updated-timestamp> | 糸 | 指定したタイムスタンプの月の開始日の午前 0 時を表す文字列 |
例 1
この例は、次のタイムスタンプの月の開始を返します。
startOfMonth('2018-03-15T13:30:30Z')
返される結果: "2018-03-01T00:00:00.0000000Z"
例 2
この例では、次のタイムスタンプの月の開始を指定した形式で返します。
startOfMonth('2018-03-15T13:30:30Z', 'yyyy-MM-dd')
返される結果: "2018-03-01"
startsWith
文字列が特定の部分文字列で始まっているかどうかを調べます。 部分文字列が見つかった場合は true を返し、見つからない場合は false を返します。 この関数は、大文字と小文字を区別しません。
startsWith('<text>', '<searchText>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< テキスト> | イエス | 糸 | 調べる文字列。 |
< searchText> | イエス | 糸 | 検索する開始文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
正 または 誤 | ブール値 | 先頭の部分文字列が見つかった場合は true を返します。 見つからなかった場合は false を返します。 |
例 1
この例は、文字列 "hello world" が部分文字列 "hello" で始まっているかどうかを調べます。
startsWith('hello world', 'hello')
返される結果: true
例 2
この例は、文字列 "hello world" が部分文字列 "greetings" で始まっているかどうかを調べます。
startsWith('hello world', 'greetings')
返される結果: false
文字列
値の文字列バージョンを返します。
string(<value>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | [任意] | 変換する値。 この値が null の場合、または null に評価される場合、値は空の文字列 ("" ) 値に変換されます。 たとえば、 ? 演算子を使用してアクセスできる、存在しないプロパティに文字列変数を割り当てると、null 値は空の文字列に変換されます。 ただし、null 値の比較は、空の文字列の比較と同じではありません。 |
戻り値 | タイプ | 説明 |
---|---|---|
< string-value> | 糸 | 指定した値の文字列バージョン。
value パラメーターが null の場合、または null に評価される場合、この値は空の文字列 ("" ) 値として返されます。 |
例 1
この例は、次の数値の文字列バージョンを作成します。
string(10)
返される結果: "10"
例 2
この例は、指定した JSON オブジェクトの文字列を作成します。二重引用符 (") のエスケープ文字として、バックスラッシュ文字 (\) を使います。
string( { "name": "Sophie Owen" } )
返される結果: "{ \\"name\\": \\"Sophie Owen\\" }"
sub
1 番目の数値から 2 番目の数値を減算して、結果を返します。
sub(<minuend>, <subtrahend>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 被減数> | イエス | 整数または浮動小数点数 | subtrahend を引く数値 |
< 減数> | イエス | 整数または浮動小数点数 | minuend から引く数値 |
戻り値 | タイプ | 説明 |
---|---|---|
< 結果> | 整数または浮動小数点数 | 1 番目の数値から 2 番目の数値を減算した結果 |
例
この例は、1 番目の数値から 2 番目の数値を減算します。
sub(10.3, .3)
返される結果: 10
substring
文字列から、指定された位置またはインデックスから始まる文字を返します。 インデックス値は 0 から始まります。 「slice()」も参照してください。
substring('<text>', <startIndex>, <length>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< テキスト> | イエス | 糸 | 文字を取得する文字列 |
< startIndex> | イエス | 整数 | 開始位置またはインデックスの値として使用する 0 以上の正の数 |
< 長さ> | いいえ | 整数 | 取得する部分文字列の文字数を示す正の値 |
注
startIndex および length パラメーター値の追加による合計が、text パラメーターに指定する文字列の長さより短いことを確認します。 それ以外の場合は、他の言語での同様の関数とは異なりエラーが発生します。他の言語での結果は startIndex から文字列の最後までの部分文字列になります。 length パラメーターは省略可能です。指定しない場合、substring() 関数が、startIndex から文字列の末尾までのすべての文字を受け取ります。
戻り値 | タイプ | 説明 |
---|---|---|
< substring-result> | 糸 | ソース文字列の指定したインデックス位置から始まる、指定した文字数を含む部分文字列 |
例
この例は、指定した文字列のインデックス値 6 から始まる 5 文字を含む部分文字列を作成します。
substring('hello world', 6, 5)
返される結果: "world"
subtractFromTime
タイムスタンプから時間単位数を減算します。 getPastTime もご覧ください。
subtractFromTime('<timestamp>', <interval>, '<timeUnit>', '<format>'?)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプを含む文字列。 |
< 間隔> | イエス | 整数 | 減算する指定した時間単位の数 |
< timeUnit> | イエス | 糸 | interval で使用する時間の単位: "Second"、"Minute"、"Hour"、"Day"、"Week"、"Month"、"Year" |
< 形式> | いいえ | 糸 |
1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< updated-timestamp> | 糸 | タイムスタンプから指定した時間単位数を引いた値 |
例 1
この例は、次のタイムスタンプから 1 日を減算します。
subtractFromTime('2018-01-02T00:00:00Z', 1, 'Day')
返される結果: "2018-01-01T00:00:00.0000000Z"
例 2
この例は、次のタイムスタンプから 1 日を減算します。
subtractFromTime('2018-01-02T00:00:00Z', 1, 'Day', 'D')
省略可能な "D" 形式を使用して返される結果: "Monday, January, 1, 2018"
T
take
コレクションの先頭から項目を返します。
take('<collection>', <count>)
take([<collection>], <count>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< コレクション> | イエス | 文字列、配列 | 項目を取得するコレクション |
< 数える> | イエス | 整数 | 先頭から取得する項目の数を示す正の整数 |
戻り値 | タイプ | 説明 |
---|---|---|
< subset> または [<subset>] | それぞれ文字列、配列 | 元のコレクションの先頭から取得された指定個数の項目を含む文字列または配列 |
例
これらの例は、次のコレクションの先頭から指定した数の項目を取得します。
take('abcde', 3)
take(createArray(0, 1, 2, 3, 4), 3)
次の結果を返します。
- 1 番目の例:
"abc"
- 2 番目の例:
[0, 1, 2]
ticks
1 月 1 日 0001 12:00:00 午前 0 時から指定したタイムスタンプまでの 100 ナノ秒間隔のティック数 (または C# の DateTime.Ticks) を返します。 詳細については、「DateTime.Ticks プロパティ (システム)」のトピックを参照してください。
ticks('<timestamp>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< タイムスタンプ> | イエス | 糸 | タイムスタンプの文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< ticks-number> | 整数 | 指定したタイムスタンプからのティック数 |
toLower
小文字の形式で文字列を返します。 文字列内の文字に小文字バージョンがない場合、その文字は返される文字列に変更されないまま残ります。
toLower('<text>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< テキスト> | イエス | 糸 | 小文字形式で返される文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< 小文字のテキスト> | 糸 | 元の文字列の小文字形式 |
例
この例は、次の文字列を小文字に変換します。
toLower('Hello World')
返される結果: "hello world"
toUpper
大文字の形式で文字列を返します。 文字列内の文字に大文字バージョンがない場合、その文字は返される文字列に変更されないまま残ります。
toUpper('<text>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< テキスト> | イエス | 糸 | 大文字形式で返される文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< 大文字テキスト> | 糸 | 元の文字列の大文字形式 |
例
この例は、次の文字列を大文字に変換します。
toUpper('Hello World')
返される結果: "HELLO WORLD"
トリガ
実行時のトリガーの出力を返すか、または式に割り当てることができる他の JSON の名前と値のペアの値を返します。
トリガーの入力の内部では、この関数は前の実行からの出力を返します。
トリガーの条件の内部では、この関数は現在の実行からの出力を返します。
既定では、この関数はトリガー オブジェクト全体を参照しますが、必要に応じて値を取得するプロパティを指定することができます。 この関数には短縮バージョンがあります。triggerOutputs() および triggerBody() をご覧ください。
trigger()
戻り値 | タイプ | 説明 |
---|---|---|
< trigger-output> | 糸 | 実行時のトリガーからの出力 |
triggerBody
実行時にトリガーの body
出力を返します。
trigger().outputs.body
の短縮形です。
trigger() をご覧ください。
triggerBody()
戻り値 | タイプ | 説明 |
---|---|---|
< trigger-body-output> | 糸 | トリガーからの body 出力 |
triggerFormDataMultiValues
トリガーの form-data 出力または form-encoded 出力内のキー名と一致する値の配列を返します。
triggerFormDataMultiValues('<key>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 鍵> | イエス | 糸 | 値を指定するキーの名前 |
戻り値 | タイプ | 説明 |
---|---|---|
[<キーと値のペアを持つ配列>] | Array | 指定したキーと一致するすべての値で構成される配列 |
例
この例は、RSS トリガーの form-data 出力または form-encoded 出力内の "feedUrl" キーの値から配列を作成します。
triggerFormDataMultiValues('feedUrl')
例の結果として返される配列: ["https://feeds.a.dj.com/rss/RSSMarketsMain.xml"]
triggerFormDataValue
トリガーの form-data 出力または form-encoded 出力内のキー名と一致する単一の値の文字列を返します。 複数の一致が見つかった場合、関数はエラーをスローします。
triggerFormDataValue('<key>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 鍵> | イエス | 糸 | 値を指定するキーの名前 |
戻り値 | タイプ | 説明 |
---|---|---|
< キー-バリュー> | 糸 | 指定したキーの値 |
例
この例は、RSS トリガーの form-data 出力または form-encoded 出力内の "feedUrl" キーの値から文字列を作成します。
triggerFormDataValue('feedUrl')
例の結果として返される文字列: "https://feeds.a.dj.com/rss/RSSMarketsMain.xml"
triggerMultipartBody
複数の部分を持つトリガーの出力の特定の部分に対する本文を返します。
triggerMultipartBody(<index>)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< インデックス> | イエス | 整数 | 取得する部分のインデックス値 |
戻り値 | タイプ | 説明 |
---|---|---|
< 本体> | 糸 | トリガーの複数の部分からなる出力内の指定した部分の本文 |
triggerOutputs
実行時のトリガーの出力を返すか、または他の JSON の名前と値のペアの値を返します。
trigger().outputs
の短縮形です。
trigger() をご覧ください。
triggerOutputs()
戻り値 | タイプ | 説明 |
---|---|---|
< trigger-output> | 糸 | 実行時のトリガーからの出力 |
トリミングする
文字列から先頭と末尾の空白を削除し、更新された文字列を返します。
trim('<text>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< テキスト> | イエス | 糸 | 先頭と末尾に削除する空白を含む文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< 更新されたテキスト> | 糸 | 先頭または末尾の空白が削除された、元の文字列の更新バージョン |
例
この例では、文字列 " Hello World " から先頭と末尾の空白が削除されます。
trim(' Hello World ')
返される結果: "Hello World"
U
UNION
指定した複数のコレクションの "すべての" 項目を含む 1 つのコレクションを返します。 この関数に渡されるいずれかのコレクションに含まれる項目は、結果にも含まれます。 1 つまたは複数の項目が同じ名前である場合は、その名前を持つ最後の項目が結果に含まれます。
union('<collection1>', '<collection2>', ...)
union([<collection1>], [<collection2>], ...)
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< collection1>, <collection2>, ... | イエス | 配列またはオブジェクト、両方ともは不可 | "すべての" 項目を取得するコレクション |
戻り値 | タイプ | 説明 |
---|---|---|
< updatedCollection> | それぞれ、配列またはオブジェクト | 指定したコレクションのすべての項目を含むコレクション。重複はありません。 |
例
この例は、以下のコレクションから "すべての" 項目を取得します。
union(createArray(1, 2, 3), createArray(1, 2, 10, 101))
返される結果: [1, 2, 3, 10, 101]
URIコンポーネント
URL の安全でない文字がエスケープ文字に置き換えられた、文字列の URI (Uniform Resource Identifier) エンコード バージョンを返します。
encodeUriComponent() ではなく、この関数を使用してください。 どちらの関数も機能は同じですが、uriComponent()
をお勧めします。
uriComponent('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | URI エンコード形式に変換する文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< encoded-uri> | 糸 | エスケープ文字が使われている URI エンコード文字列 |
例
この例は、次の文字列の URI エンコード バージョンを作成します。
uriComponent('https://contoso.com')
返される結果: "https%3A%2F%2Fcontoso.com"
uriコンポーネントをバイナリに変換
URI (Uniform Resource Identifier) コンポーネントのバイナリ バージョンを返します。
uriComponentToBinary('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | 変換する URI エンコード文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< エンコードされたURI用バイナリ> | 糸 | URI エンコード文字列のバイナリ バージョン バイナリ コンテンツは base64 でエンコードされ、$content によって表されます。 |
例
この例は、次の URI エンコード文字列のバイナリ バージョンを作成します。
uriComponentToBinary('https%3A%2F%2Fcontoso.com')
返される結果: "aHR0cHM6Ly9jb250b3NvLmNvbQ=="
uriComponentToString
URI (Uniform Resource Identifier) エンコード文字列の文字列バージョンを返します。実質的に、URI エンコード文字列をデコードします。
uriComponentToString('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | デコードする URI エンコード文字列 |
戻り値 | タイプ | 説明 |
---|---|---|
< decodeed-uri> | 糸 | URI エンコード文字列のデコード バージョン |
例
この例は、次の URI エンコード文字列のデコードされた文字列バージョンを作成します。
uriComponentToString('https%3A%2F%2Fcontoso.com')
返される結果: "https://contoso.com"
uriHost (URIホスト)
URI (Uniform Resource Identifier) の host
値を返します。
uriHost('<uri>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< uri> | イエス | 糸 |
host 値を取得する URI |
戻り値 | タイプ | 説明 |
---|---|---|
< host-value> | 糸 | 指定した URI の host 値 |
例
この例は、次の URI の host
値を検索します。
uriHost('https://www.localhost.com:8080')
返される結果: "www.localhost.com"
uriPath
URI (Uniform Resource Identifier) の path
値を返します。
uriPath('<uri>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< uri> | イエス | 糸 |
path 値を取得する URI |
戻り値 | タイプ | 説明 |
---|---|---|
< path-value> | 糸 | 指定した URI の path 値
path に値がない場合は、"/" 文字を返します。 |
例
この例は、次の URI の path
値を検索します。
uriPath('https://www.contoso.com/catalog/shownew.htm?date=today')
返される結果: "/catalog/shownew.htm"
uriPathAndQuery(URIパスおよびクエリ)
URI (Uniform Resource Identifier) の path
と query
の値を返します。
uriPathAndQuery('<uri>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< uri> | イエス | 糸 |
path と query の値を取得する URI |
戻り値 | タイプ | 説明 |
---|---|---|
< path-query-value> | 糸 | 指定した URI の path と query の値。
path の値が指定されていない場合は、"/" 文字を返します。 |
例
この例は、次の URI の path
と query
の値を検索します。
uriPathAndQuery('https://www.contoso.com/catalog/shownew.htm?date=today')
返される結果: "/catalog/shownew.htm?date=today"
uriPort
URI (Uniform Resource Identifier) の port
値を返します。
uriPort('<uri>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< uri> | イエス | 糸 |
port 値を取得する URI |
戻り値 | タイプ | 説明 |
---|---|---|
< port-value> | 整数 | 指定した URI の port 値
port の値が指定されていない場合は、プロトコルの既定のポートを返します。 |
例
この例は、次の URI の port
値を返します。
uriPort('https://www.localhost:8080')
返される結果: 8080
URIクエリ
URI (Uniform Resource Identifier) の query
値を返します。
uriQuery('<uri>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< uri> | イエス | 糸 |
query 値を取得する URI |
戻り値 | タイプ | 説明 |
---|---|---|
< query-value> | 糸 | 指定した URI の query 値 |
例
この例は、次の URI の query
値を返します。
uriQuery('https://www.contoso.com/catalog/shownew.htm?date=today')
返される結果: "?date=today"
URIスキーム
URI (Uniform Resource Identifier) の scheme
値を返します。
uriScheme('<uri>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< uri> | イエス | 糸 |
scheme 値を取得する URI |
戻り値 | タイプ | 説明 |
---|---|---|
< scheme-value> | 糸 | 指定した URI の scheme 値 |
例
この例は、次の URI の scheme
値を返します。
uriScheme('https://www.contoso.com/catalog/shownew.htm?date=today')
返される結果: "http"
utcNow(現在のUTC時間を取得する機能)
現在のタイムスタンプを返します。
utcNow('<format>')
必要に応じて、<format> パラメーターで異なる形式を指定できます。
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 形式> | いいえ | 糸 |
1 つの書式指定子またはカスタム書式指定パターンである数値書式指定文字列。 timestamp の既定の形式は "o" (yyyy-MM-ddTHH:mm:ss.fffffffK) です。これは、ISO 8601 に準拠し、タイム ゾーン情報が保持されます。 形式が有効な値でない場合は、エラーが生成されます。 |
戻り値 | タイプ | 説明 |
---|---|---|
< current-timestamp> | 糸 | 現在の日付と時刻 |
例 1
現在の日時が 2018 年 4 月 15 日午後 1 時 0 分 0 秒であるものとします。 この例は、現在のタイムスタンプを取得します。
utcNow()
返される結果: "2018-04-15T13:00:00.0000000Z"
例 2
現在の日時が 2018 年 4 月 15 日午後 1 時 0 分 0 秒であるものとします。 この例は、オプションの "D" 形式を使って現在のタイムスタンプを取得します。
utcNow('D')
返される結果: "Sunday, April 15, 2018"
V
変数
指定した変数の値を返します。
variables('<variableName>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< variableName> | イエス | 糸 | 値を取得する変数の名前 |
戻り値 | タイプ | 説明 |
---|---|---|
< 変数値> | [任意] | 指定した変数の値 |
例
"numItems" 変数の現在の値が 20 であるものとします。 この例は、この変数の整数値を取得します。
variables('numItems')
返される結果: 20
W
ワークフロー
実行時にワークフロー自体に関するすべての詳細を返します。
workflow().<property>
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 財産> | いいえ | 糸 | 値を取得するワークフロー プロパティの名前 既定では、ワークフロー オブジェクトには次のプロパティがあります: name 、type 、id 、___location 、run 、tags 。 - run プロパティ値は JSON オブジェクトであり、次のプロパティを含んでいます: name 、type 、id 。 - tags プロパティは JSON オブジェクトであり、Azure Logic Apps のロジック アプリまたは Power Automate のフローに関連付けられているタグ、およびそれらのタグの値を含んでいます。 タグの詳細については、Azure での論理的な組織化のためのリソース、リソース グループ、およびサブスクリプションへのタグ付けに関するページを参照してください。 注: 既定では、ロジック アプリにはタグがありませんが、Power Automate のフローには flowDisplayName タグと environmentName タグがあります。 |
例 1
この例は、ワークフローの現在の実行の名前を返します。
workflow().run.name
例 2
Power Automate を使用する場合は、@workflow()
出力プロパティを使用する tags
式を作成して、フローの flowDisplayName
または environmentName
プロパティから値を取得できます。
たとえば、リンクをたどってフローに戻るカスタム電子メール通知をフロー自体から送信することができます。 これらの通知に、電子メール タイトルにフローの表示名を含み、次の構文に従う HTML リンクを含めることができます。
<a href=https://flow.microsoft.com/manage/environments/@{workflow()['tags']['environmentName']}/flows/@{workflow()['name']}/details>Open flow @{workflow()['tags']['flowDisplayName']}</a>
X
XML
JSON オブジェクトを含む文字列の XML バージョンを返します。
xml('<value>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< 価値> | イエス | 糸 | 変換する JSON オブジェクトを含む文字列 JSON オブジェクトのルート プロパティは 1 つに限る必要があり、配列にはできません。 二重引用符 (") のエスケープ文字としてはバックスラッシュ文字 (\) を使います。 |
戻り値 | タイプ | 説明 |
---|---|---|
< xml-version> | オブジェクト | 指定した文字列または JSON オブジェクトのエンコードされた XML |
例 1
この例は、文字列を XML に変換します。
xml('<name>Sophia Owen</name>')
返される結果の XML:
<name>Sophia Owen</name>
例 2
この例は、JSON オブジェクトを含む次の文字列の XML バージョンを作成します。
xml(json('{ "name": "Sophia Owen" }'))
返される結果の XML:
<name>Sophia Owen</name>
例 3
次のような JSON オブジェクトがあるものとします。
{
"person": {
"name": "Sophia Owen",
"city": "Seattle"
}
}
この例は、この JSON オブジェクトを含む文字列の XML を作成します。
xml(json('{"person": {"name": "Sophia Owen", "city": "Seattle"}}'))
返される結果の XML:
<person>
<name>Sophia Owen</name>
<city>Seattle</city>
<person>
xpath
XML で XPath (XML Path Language) 式と一致するノードまたは値を調べて、一致するノードまたは値を返します。 XPath 式または単に "XPath" は、XML コンテンツ内のノードまたは計算値を選択できるように、XML ドキュメント構造内の移動を補助します。
注
従量課金 ロジック アプリと Standard ロジック アプリでは、すべての関数式で .NET XPath ライブラリが使用されます。 XPath 式は、基になる .NET ライブラリと互換性があり、基になる .NET ライブラリがサポートする式のみをサポートします。
xpath('<xml>', '<xpath>')
パラメーター | 必須 | タイプ | 説明 |
---|---|---|---|
< xml> | イエス | [任意] | XPath 式の値に一致するノードまたは値を検索する XML 文字列 |
< xpath> | イエス | [任意] | 一致する XML ノードまたは値の検索に使用する XPath 式 |
戻り値 | タイプ | 説明 |
---|---|---|
< xml-node> | XML | 1 つのノードだけが指定した XPath 式と一致するときの XML ノード |
< 価値> | [任意] | 1 つの値だけが指定した XPath 式と一致するときの XML ノードの値 |
[<xml-node1>、<xml-node2>, ...] - または - [<value1>、<value2>, ...] | Array | 指定した XPath 式と一致する XML ノードまたは値の配列 |
例 1
この 'items'
XML 文字列があるとします。
<?xml version="1.0"?>
<produce>
<item>
<name>Gala</name>
<type>apple</type>
<count>20</count>
</item>
<item>
<name>Honeycrisp</name>
<type>apple</type>
<count>10</count>
</item>
</produce>
この例では、XPath 式 '/produce/item/name/text()'
を渡して、<name></name>
XML 文字列内の 'items'
ノードに一致するノードを検索し、それらのノード値を含む配列を返します。
xpath(xml(parameters('items')), '/produce/item/name/text()')
さらに、この例では、parameters() 関数を使って 'items'
から XML 文字列を取得し、xml() 関数を使って文字列を XML 形式に変換します。
<name></name>
と一致するノードの値が設定された結果配列は次のとおりです。
[ Gala, Honeycrisp ]
例 2
例 1 に続いて、この例では、XPath 式 '/produce/item/name[1]'
を渡して、name
要素の子である最初の item
要素を検索します。
xpath(xml(parameters('items')), '/produce/item/name[1]')
結果は次のとおりです: Gala
例 3
例 1 に続いて、この例では、XPath 式 '/produce/item/name[last()]'
を渡して、name
要素の子である最後の item
要素を検索します。
xpath(xml(parameters('items')), '/produce/item/name[last()]')
結果は次のとおりです: Honeycrisp
例 4
この例では、items
XML 文字列に、expired='true'
と expired='false'
の属性も含まれているとします。
<?xml version="1.0"?>
<produce>
<item>
<name expired='true'>Gala</name>
<type>apple</type>
<count>20</count>
</item>
<item>
<name expired='false'>Honeycrisp</name>
<type>apple</type>
<count>10</count>
</item>
</produce>
この例では、XPath 式 '//name[@expired]'
を渡して、name
属性を持つすべての expired
要素を検索します。
xpath(xml(parameters('items')), '//name[@expired]')
結果は次のとおりです: [ Gala, Honeycrisp ]
例 5
この例では、items
XML 文字列に属性 expired = 'true'
のみが含まれているとします。
<?xml version="1.0"?>
<produce>
<item>
<name expired='true'>Gala</name>
<type>apple</type>
<count>20</count>
</item>
<item>
<name>Honeycrisp</name>
<type>apple</type>
<count>10</count>
</item>
</produce>
この例では、XPath 式 '//name[@expired = 'true']'
を渡して、属性 name
を持つすべての expired = 'true'
要素を検索します。
xpath(xml(parameters('items')), '//name[@expired = 'true']')
結果は次のとおりです: [ Gala ]
例 6
この例では、items
XML 文字列に次の属性も含まれているとします。
expired='true' price='12'
expired='false' price='40'
<?xml version="1.0"?>
<produce>
<item>
<name expired='true' price='12'>Gala</name>
<type>apple</type>
<count>20</count>
</item>
<item>
<name expired='false' price='40'>Honeycrisp</name>
<type>apple</type>
<count>10</count>
</item>
</produce>
この例では、XPath 式 '//name[@price>35]'
を渡して、name
を持つすべての price > 35
要素を検索します。
xpath(xml(parameters('items')), '//name[@price>35]')
結果は次のとおりです: Honeycrisp
例 7
この例では、items
XML 文字列が例 1 と同じであるとします。
<?xml version="1.0"?>
<produce>
<item>
<name>Gala</name>
<type>apple</type>
<count>20</count>
</item>
<item>
<name>Honeycrisp</name>
<type>apple</type>
<count>10</count>
</item>
</produce>
この例では <count></count>
ノードと一致するノードを検索し、sum()
関数でそれらのノードの値を追加します。
xpath(xml(parameters('items')), 'sum(/produce/item/count)')
結果は次のとおりです: 30
例 8
この例では、次の XML 文字列があるとします。これには、XML ドキュメントの名前空間 xmlns="https://contoso.com"
が含まれています。
<?xml version="1.0"?><file xmlns="https://contoso.com"><___location>Paris</___location></file>
これらの式では、XPath 式 /*[name()="file"]/*[name()="___location"]
または /*[local-name()="file" and namespace-uri()="https://contoso.com"]/*[local-name()="___location"]
を使用して、<___location></___location>
ノードに一致するノードを検索します。 これらの例は、デザイナーまたは式エディターで使用する構文を示しています。
xpath(xml(body('Http')), '/*[name()="file"]/*[name()="___location"]')
xpath(xml(body('Http')), '/*[local-name()="file" and namespace-uri()="https://contoso.com"]/*[local-name()="___location"]')
<___location></___location>
ノードと一致する結果のノード:
<___location xmlns="https://contoso.com">Paris</___location>
Von Bedeutung
コード ビューで作業している場合は、円記号 (\) を使用して二重引用符 (") をエスケープします。 たとえば、式を JSON 文字列としてシリアル化する場合は、エスケープ文字を使用する必要があります。 ただし、デザイナーまたは式エディターで作業している場合、基になる定義に円記号が自動的に追加されるため、二重引用符をエスケープする必要はありません。次に例を示します。
コード ビュー:
xpath(xml(body('Http')), '/*[name()=\"file\"]/*[name()=\"___location\"]')
式エディター:
xpath(xml(body('Http')), '/*[name()="file"]/*[name()="___location"]')
例 9
例 8 に続いてこの例では、XPath 式 'string(/*[name()="file"]/*[name()="___location"])'
を使用して、<___location></___location>
ノードの値を検索します。
xpath(xml(body('Http')), 'string(/*[name()="file"]/*[name()="___location"])')
結果は次のとおりです: Paris
次のステップ
ワークフロー定義言語について学習してください