

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

# 使用表達式在 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 物件傳回的內容)：


****  

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