Utilisation des expressions régulières dans les modèles CloudFormation - AWS CloudFormation

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisation des expressions régulières dans les modèles CloudFormation

Vous pouvez utiliser des expressions régulières (aussi connues sous le nom de regex) à plusieurs endroits dans vos modèles CloudFormation, notamment dans la propriété AllowedPattern lors de la création d’un paramètre de modèle.

Toutes les expressions régulières utilisées dans CloudFormation respectent la syntaxe des expressions régulières Java. Pour une description complète de cette syntaxe et de ses constructions, consultez java.util.regex.Pattern.

Si vous écrivez votre modèle CloudFormation dans la syntaxe JSON, vous devez échapper toute barre oblique inversée (\) dans votre expression régulière en ajoutant une barre oblique inversée supplémentaire. Cela s’explique par le fait que JSON interprète la barre oblique inversée comme un caractère d’échappement, et que vous devez l’échapper pour qu’elle soit traitée comme un caractère littéral dans l’expression régulière.

Par exemple, si vous incluez un \d dans l'expression régulière afin de désigner un caractère numérique, vous devrez écrire \\d dans votre modèle JSON.

Dans l’exemple suivant, la propriété AllowedPattern spécifie une expression régulière correspondant à quatre chiffres consécutifs (\d{4}). Cependant, étant donné que l’expression régulière est définie dans un modèle JSON, le caractère de barre oblique inversée doit être échappé par une barre oblique inversée (\\d) supplémentaire.

{ "Parameters": { "MyParameter": { "Type": "String", "AllowedPattern": "\\d{4}" } } }

Si vous écrivez votre modèle CloudFormation en syntaxe YAML, vous devez entourer l’expression régulière de guillemets simples (''). Aucun échappement supplémentaire n’est nécessaire.

Parameters: MyParameter: Type: String AllowedPattern: '\d{4}'
Note

Les expressions régulières dans CloudFormation ne sont prises en charge que pour la validation, dans des contextes spécifiques comme AllowedPattern. Elles ne sont pas prises en charge comme opérations de correspondance de motifs dans les fonctions intrinsèques CloudFormation, comme Fn::Equals, qui effectuent uniquement des comparaisons exactes de chaînes, et non des correspondances par forme.