

# 使用拆分字符串转换来分解字符串列
<a name="transforms-split-string"></a>

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

 例如，您可以使用逗号作为模式拆分“类别”列，以添加一列“categories\$1arr”。


| product\$1id | categories | categories\$1arr | 
| --- | --- | --- | 
| 1 | 运动、冬季 | [运动、冬季] | 
| 2 | 花园、工具 | [花园、工具] | 
| 3 | 电子游戏 | [电子游戏] | 
| 4 | 游戏、棋盘游戏、社交 | [游戏、棋盘游戏、社交] | 

**要添加拆分字符串转换，请执行以下操作：**

1. 打开资源面板，然后选择“拆分字符串”将新转换添加到作业图。添加节点时选择的节点将是其父节点。

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

1. 在**转换**选项卡上，选择要拆分的列，然后输入用于拆分字符串的模式。在大多数情况下，您可以只输入字符，除非它作为正则表达式具有特殊含义并且需要转义。需要转义的字符有：`\.[]{}()<>*+-=!?^$|` 在字符前面加一个反斜杠。例如，如果您想用点（'.'）分隔，则需要输入 `\.`。然而，逗号没有特殊含义，可以按原样指定：`,`。  
![\[屏幕截图显示了“拆分字符串”转换的“转换”选项卡。\]](http://docs.amazonaws.cn/glue/latest/dg/images/transforms-split-string-transform-tab.png)

1. （可选）如果要保留原始字符串列，则可以为新的数组列输入名称，这样既保留原始字符串列，又保留新的令牌化数组列。