如何在Terraform数据源过滤器中使用正则表达式筛选AWS可用区?
解决方案
修改后的Terraform数据源配置如下:
data "aws_availability_zones" "all_region_az" { all_availability_zones = true state = "available" filter { name = "names" values = [regex("^us-east-1[a-z]$")] } }
关键说明
- 正则表达式
^us-east-1[a-z]$通过^锚定字符串开头、$锚定字符串结尾,确保只匹配以us-east-1开头、后面紧跟单个小写字母且无其他字符的可用区名称,完全匹配你给出的us-east-1a/1b这类目标格式。 - 原配置的
regex("us-east-1[a-z]")缺少首尾锚定,理论上可能误匹配包含该模式的非标准长名称(比如us-east-1a-test),加上锚定能让筛选逻辑更严谨。
内容的提问来源于stack exchange,提问作者meallhour
相关产品推荐
相关产品推荐

