

Ini adalah *Panduan Referensi CloudFormation Template* baru. Harap perbarui bookmark dan tautan Anda. Untuk bantuan memulai CloudFormation, lihat [Panduan AWS CloudFormation Pengguna](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# `Fn:: perangkat tambahan FindInMap`
<a name="intrinsic-function-reference-findinmap-enhancements"></a>

`AWS::LanguageExtensions`Transformasi meningkatkan fungsionalitas fungsi `Fn::FindInMap` intrinsik dalam template. CloudFormation 

`Fn::FindInMap`Fungsi standar hanya mendukung `Fn::FindInMap` dan `Ref` sebagai fungsi intrinsik bersarang. `AWS::LanguageExtensions`Transformasi menghilangkan batasan ini, memungkinkan Anda untuk menggunakan berbagai fungsi intrinsik yang lebih luas untuk menentukan parameter. `Fn::FindInMap`

**catatan**  
`DefaultValue`Parameter untuk `Fn::FindInMap` tidak lagi membutuhkan `AWS::LanguageExtensions` transformasi. Anda dapat menggunakan `DefaultValue` dalam CloudFormation template apa pun. Untuk informasi selengkapnya, lihat [`Fn:: FindInMap`](intrinsic-function-reference-findinmap.md).

## Pernyataan
<a name="intrinsic-function-reference-findinmap-enhancements-declaration"></a>

### JSON
<a name="intrinsic-function-reference-findinmap-enhancements-syntax.json"></a>

```
{ "Fn::FindInMap" : [ "{{MapName}}", "{{TopLevelKey}}", "{{SecondLevelKey}}"] }
```

Jika Anda ingin menentukan nilai fallback ketika kunci tidak ditemukan dalam pemetaan, sertakan: `DefaultValue`

```
{ "Fn::FindInMap" : [ "{{MapName}}", "{{TopLevelKey}}", "{{SecondLevelKey}}", {"DefaultValue": "{{DefaultValue}}"}] }
```

### YAML
<a name="intrinsic-function-reference-findinmap-enhancements-syntax.yaml"></a>

Sintaks untuk nama fungsi penuh:

```
Fn::FindInMap: [ {{MapName}}, {{TopLevelKey}}, {{SecondLevelKey}} ]
```

Sintaks untuk bentuk pendek:

```
!FindInMap [ {{MapName}}, {{TopLevelKey}}, {{SecondLevelKey}} ]
```

Jika Anda ingin menentukan nilai fallback ketika kunci tidak ditemukan dalam pemetaan, sertakan: `DefaultValue`

Sintaks untuk nama fungsi penuh:

```
Fn::FindInMap:
  - {{MapName}}
  - {{TopLevelKey}}
  - {{SecondLevelKey}}
  - DefaultValue: {{DefaultValue}}
```

Sintaks untuk bentuk pendek:

```
!FindInMap
  - {{MapName}}
  - {{TopLevelKey}}
  - {{SecondLevelKey}}
  - DefaultValue: {{DefaultValue}}
```

## Parameter
<a name="intrinsic-function-reference-findinmap-enhancements-parameters"></a>

Dengan `AWS::LanguageExtensions` transformasi, parameter`MapName`,, `TopLevelKey``SecondLevelKey`, dan masing-masing `DefaultValue` dapat menjadi fungsi intrinsik, asalkan menyelesaikan ke nilai yang valid selama transformasi.

## Contoh
<a name="w2aac28c16c20c13"></a>

Contoh berikut menunjukkan cara menggunakan fungsi intrinsik dalam parameter `Fn::FindInMap` saat Anda menambahkan transformasi. `AWS::LanguageExtensions`

### Menggunakan fungsi intrinsik untuk menentukan kunci tingkat atas
<a name="intrinsic-function-reference-findinmap-enhancements-example"></a>

Berikut ini adalah contoh menggunakan fungsi dengan `Fn::Select` dan `Fn::FindInMap` fungsi `Fn::Split` intrinsik tertanam di dalamnya untuk menentukan kunci tingkat atas.

#### JSON
<a name="intrinsic-function-reference-findinmap-enhancement-example.json"></a>

```
{
  //...
  "Transform": "AWS::LanguageExtensions",
  //...
      "Fn::FindInMap": [
        "MyMap",
        {
          "Fn::Select": [
            0,
            {
              "Fn::Split": [
                "|",
                { "Ref": "InputKeys" }
              ]
            }
          ]
        },
        "SecondKey"
      ]
//...
}
```

#### YAML
<a name="intrinsic-function-reference-findinmap-enhance-example.yaml"></a>

```
Transform: 'AWS::LanguageExtensions'
#...
    !FindInMap: [MyMap, !Select [0, !Split [|, !Ref InputKeys]], SecondKey]
#...
```

## Fungsi yang didukung
<a name="intrinsic-function-reference-findinmap-enhancements-supported-functions"></a>

Anda dapat menggunakan fungsi-fungsi berikut dalam parameter `Fn::FindInMap` dengan `AWS::LanguageExtensions` transformasi:
+ ``Fn:: FindInMap``
+ ``Fn::Join``
+ ``Fn: :Sub``
+ ``Fn::If``
+ ``Fn: :Pilih``
+ ``Fn::Length``
+ ``Fn::ToJsonString``
+ ``Fn: :Berpisah``— Kecuali jika digunakan untuk nilai default, `Fn::Split` harus digunakan bersama dengan fungsi intrinsik yang menghasilkan string, seperti atau. ``Fn::Join`` ``Fn: :Pilih``
+ ``Ref``

## Sumber daya terkait
<a name="w2aac28c16c20c17"></a>

Untuk informasi lebih lanjut dan contoh yang menunjukkan cara menggunakan fungsi `Fn::FindInMap` intrinsik, termasuk `DefaultValue` parameter, lihat. [`Fn:: FindInMap`](intrinsic-function-reference-findinmap.md)

Untuk informasi lebih lanjut tentang `AWS::LanguageExtensions` transformasi, lihat[Tansformasi `AWS::LanguageExtensions`](transform-aws-languageextensions.md).