如何使用Alteryx或Pandas从Excel列中提取Issue及关联ID
Alteryx 实现方案
- 第一步:使用「输入数据」工具导入目标Excel文件,选中包含待处理文本的列
- 第二步:添加「正则表达式」工具,按以下规则配置:
- 字段选择待处理的目标文本列
- 正则匹配公式填写
(Issue\s*#?[A-Za-z0-9]+),可根据实际ID的格式调整后半段的匹配规则 - 匹配方法选择「提取所有匹配项」,如果需要多匹配项拆分为独立列选「拆分到列」,需要拆分为独立行选「拆分到行」
- 可勾选「忽略大小写」适配文本中大小写不统一的Issue写法
- 第三步:如果需要保留原表其余字段,通过「连接」工具按行号关联提取结果和原数据表即可
- 第四步:通过「输出数据」工具导出处理完成的结果
Pandas 实现方案
- 第一步:导入依赖库并读取Excel数据
import pandas as pd import re # 替换为你的本地文件路径和目标列名称 df = pd.read_excel("你的数据文件.xlsx") target_col = "包含待处理文本的列名"
- 第二步:编写提取函数处理目标列
def extract_issue(text): # 正则可根据实际ID规则调整,当前适配Issue 123、Issue #123、Issue ABC123等格式 res = re.findall(r'Issue\s*#?[A-Za-z0-9]+', str(text), flags=re.IGNORECASE) return ",".join(res) if res else None df["提取的Issue_ID"] = df[target_col].apply(extract_issue) # 若需要将多个匹配结果拆分为独立行,取消注释下行代码 # df = df.assign(提取的Issue_ID=df["提取的Issue_ID"].str.split(",")).explode("提取的Issue_ID")
- 第三步:导出处理结果
df.to_excel("提取结果.xlsx", index=False)
内容的提问来源于stack exchange,提问作者hoss1186
相关产品推荐
相关产品推荐

