一千萬個為什麽

搜索

用於Cloudformation模板中電子郵件的AllowedPattern



我正在努力為Cloudformation的電子郵件參數指定一個正則表達式:

Parameters:
  MyEmail :
    Type: String
    Description: Email for notifications
    AllowedPattern: /[^\[email protected]][email protected][^\[email protected]]+\.[^\[email protected]]+/
    ConstraintDescription: You should enter a valid email

如您所見,我試過/[^ \ s @] + @ [^ \ s @] + \。[^ \ s @] +/,它不起作用。

Cloudformation模板中的電子郵件的正則表達式是什麽?

轉載註明原文: 用於Cloudformation模板中電子郵件的AllowedPattern

一共有 1 個回答:

重要</強>

     

由於AWS CloudFormation模板使用JSON語法指定對象和數據,因此您需要為正則表達式中的任何反斜杠字符添加額外的反斜杠,否則JSON會將它們解釋為轉義字符。

     

例如,如果您在正則表達式中包含 \ d 以匹配數字字符,則需要在您的JSON模板中將其作為 \\ d 編寫

http://docs.aws.amazon.com/AWSCloudFormation/最新/ UserGuide/CFN-regexes.html

這同樣適用於你的 \ s 表達式。使用 \\ s ,它可以工作。

修改</強>

回想起這個問題,我開始懷疑你定義中缺少的引號。我發現這些經驗是yaml格式,這是在aws中定義事物的第二種方式。

如果你應該遵循yaml語法,給字符串值的正確方法是這樣的:

AllowedPattern = '/[^\[email protected]][email protected][^\[email protected]]+\.[^\[email protected]]+/'

https:// aws .amazon.com /博客/ AWS/AWS-cloudformation更新-YAML交疊層引用簡化的取代/

修改</強>

Use quotes if your value includes special characters, (e.g. :, {, }, [, ], ,, &, *, #, ?, |, -, <, >, =, !, %, @, ).

https://stackoverflow.com/questions/19109912/doi-i-需要引號換弦功能於YAML