使用 terraform 创建胶水表时出现以下错误
at 'table.storageDescriptor.columns.5.member.type' failed to satisfy constraint: Member must satisfy regular expression pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\t]*;
terraform 列类型如下所示:
struct<
subscriber_id:string,
price_plan_id:string,
usage_rate_id:string,
entitlement_id:string,
charged_gl:string,
uncharged_gl:string,
audit_trail:array<
struct<
time:string,
outcome_details:array<
struct<balance_id:array<string>,
balance_delta:string,
event_type:string,
invoice_text:string>>>>>
为了可读性,我一直保持缩进。当我将其更改为如下所示的缩小版本时,错误就会消失。
struct<subscriber_id:string,price_plan_id:string,usage_rate_id:string,entitlement_id:string,charged_gl:string,uncharged_gl:string,audit_trail:array<struct<time:string,outcome_details:array<struct<balance_id:array<string>,balance_delta:double,event_type:string,invoice_text:string>>>>>"
AWS 文档还介绍了多个 API 的这种模式。以下是 Glue 表的列类型所提到的内容。
类型 列中数据的数据类型。
类型:字符串
长度约束:最小长度为 0。最大长度为 131072。
模式:[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\t]*
要求:否
我想了解这种模式,这种模式是什么意思。我尝试搜索模式中提到的 unicode 字符,但无法识别此处表示的字符。我对正则表达式比较熟悉,但从未遇到过这种模式。