

# 使用正则表达式提取字符串片段
<a name="transforms-regex-extractor"></a>

此转换使用正则表达式提取字符串片段并从中创建新列，如果使用正则表达式组则创建多列。

**将正则表达式提取器转换节点添加到作业图**

1. 打开资源面板，然后选择**正则表达式提取器**将新转换添加到作业图。添加节点时选择的节点将是其父节点。

1. 在节点属性面板上，输入作业图中节点的名称。如果尚未选择父节点，请从 **Node parents (父节点)** 列表中选择一个节点，用作转换的输入源。

1. 在**转换**选项卡上，输入正则表达式和需要应用正则表达式的列。然后输入用于存储匹配字符串的新列的名称。仅当源列为空时，新列才会为空；如果正则表达式不匹配，则该列将为空。

   如果正则表达式使用组，则会有一个用逗号分隔的相应列名，但是您可以通过将列名留空来跳过组。

   例如，如果您有一列“purchase\_date”，其中包含同时使用长和短 ISO 日期格式的字符串，则需要提取年、月、日和小时（如果有）。请注意：小时组是可选的，否则在不可用的行中，所有提取的组都将是空字符串（因为正则表达式不匹配）。在这种情况下，我们不希望该组将时间设为可选，而是将内部时间设为可选；因此我们将名称留空并且不会被提取（该组将包含 T 字符）。  
![屏幕截图显示了为正则表达式提取器配置正则表达式。](http://docs.aws.amazon.com/zh_cn/glue/latest/dg/images/regex-extractor-1.png)

   最终呈现数据预览：  
![屏幕截图显示了为正则表达式提取器配置数据预览。](http://docs.aws.amazon.com/zh_cn/glue/latest/dg/images/regex-extractor-2.png)