Power Query提取文本与数字:拆分ID列生成数字、文本列需求
在Power Query中拆分Id列为数字和文本列
生成「ID number」列(仅保留数字)
- 进入Power Query编辑器,选中数据后点击添加列 > 自定义列
- 在公式栏输入:
= Text.Select([Id], {"0".."9"}) - 把新建列的名称改成「ID number」。如果需要将提取的文本转为数值类型,可直接修改公式:
注:原Id中无数字时,该列会显示= Value.FromText([ID number])null。
生成「ID Text」列(仅保留非数字内容)
- 点击添加列 > 自定义列,输入公式提取所有非数字字符(含下划线、空格等):
= Text.Select([Id], List.Difference(Text.ToList([Id]), {"0".."9"})) - 也可直接指定要保留的字符范围(更精准),比如字母、下划线、空格:
= Text.Select([Id], {"a".."z", "A".."Z", "_", " "}) - 把列名改成「ID Text」。
示例效果
| 原Id | ID number | ID Text |
|---|---|---|
| 123abcd | 123 | abcd |
| _ETABCV | _ETABCV | |
| 34 dddd | 34 | dddd |
内容的提问来源于stack exchange,提问作者Miraiinik
相关产品推荐
相关产品推荐

