使用拆分字符串转换来分解字符串列 - Amazon Glue
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用拆分字符串转换来分解字符串列

拆分字符串转换允许您使用正则表达式将字符串分解为令牌数组,以定义拆分的完成方式。然后,您可以将该列保留为数组类型,或者在此之后应用数组转列转换,将数组值提取到顶级字段中,前提是每个令牌都有我们事先知道的含义。此外,如果令牌的顺序无关紧要(例如,一组类别),则可以使用分解转换为每个值生成单独的行。

例如,您可以使用逗号作为模式拆分“类别”列,以添加一列“categories_arr”。

product_id categories categories_arr
1 运动、冬季 [运动、冬季]
2 花园、工具 [花园、工具]
3 电子游戏 [电子游戏]
4 游戏、棋盘游戏、社交 [游戏、棋盘游戏、社交]
要添加拆分字符串转换,请执行以下操作:
  1. 打开资源面板,然后选择“拆分字符串”将新转换添加到作业图。添加节点时选择的节点将是其父节点。

  2. (可选)在节点属性选项卡上,输入任务图中节点的名称。如果尚未选择父节点,请从 Node parents (父节点) 列表中选择一个节点,用作转换的输入源。

  3. 转换选项卡上,选择要拆分的列,然后输入用于拆分字符串的模式。在大多数情况下,您可以只输入字符,除非它作为正则表达式具有特殊含义并且需要转义。需要转义的字符有:\.[]{}()<>*+-=!?^$| 在字符前面加一个反斜杠。例如,如果您想用点('.')分隔,则需要输入 \.。然而,逗号没有特殊含义,可以按原样指定:,

    屏幕截图显示了“拆分字符串”转换的“转换”选项卡。
  4. (可选)如果要保留原始字符串列,则可以为新的数组列输入名称,这样既保留原始字符串列,又保留新的令牌化数组列。