

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用表達式在 Amazon Bedrock 流程中擷取整個輸入的相關部分來定義輸入
<a name="flows-expressions"></a>

設定節點的輸入時，您必須根據將進入節點的整個輸入來進行定義。整個輸入可以是字串、數字、布林值、陣列或物件。若要定義與整個輸入相關的輸入，您可以使用以 [JsonPath](https://github.com/json-path/JsonPath) 為基礎的支援表達式子集。每個表達式都必須以 `$.data` 開頭，這是指整個輸入。使用表達式時，請注意下列事項：
+ 如果整個輸入是字串、數字或布林值，則您可用來定義個別輸入的唯一表達式是 `$.data`
+ 如果整個輸入是陣列或物件，您可以使用擷取一部分來定義個別輸入。

舉例來說，若要了解如何使用表達式，則假設整個輸入是下列 JSON 物件：

```
{
    "animals": {
        "mammals": ["cat", "dog"],
        "reptiles": ["snake", "turtle", "iguana"]
    },
    "organisms": {
        "mammals": ["rabbit", "horse", "mouse"],
        "flowers": ["lily", "daisy"]
    },
    "numbers": [1, 2, 3, 5, 8]
}
```

您可以使用下列表達式來擷取輸入的一部分 (範例參照從上述 JSON 物件傳回的內容)：


****  

| 表達式 | 意義 | 範例 | 範例結果 | 
| --- | --- | --- | --- | 
| $.data | 整個輸入。 | $.data | 整個物件 | 
| .{{name}} | JSON 物件中稱為{{名稱}}之欄位的值。 | $.data.numbers | [1, 2, 3, 5, 8] | 
| 【{{int}}】 | 陣列中 {{int}} 指定的索引成員。 | $.data.animals.reptiles[2] | iguana | 
| [{{int1}}, {{int2}}, ...] | 陣列中每個 {{int}} 所指定索引的成員。 | $.data.numbers[0, 3] | [1, 5] | 
| [{{int1}}:{{int2}}] | 由陣列中 {{int1}} (含) 和 {{int2}} (不含) 之間索引的項目組成的陣列。省略 {{int1}} 或 {{int2}} 等同於標記陣列的開頭或結尾。 | $.data.organisms.mammals[1:] | ["horse", "mouse"] | 
| \* | 可以用來取代 {{name}} 或 {{int}} 的萬用字元。如果有多個結果，則會在陣列中傳回結果。 | $.data.\*.mammals | [["cat", "dog"], ["rabbit", "horse", "mouse"]] | 