Power Query新手求助:如何提取列字符串中的连续4位数字?
Power Query提取字符串中连续4位数字的方法
针对你的需求,不用Text.Select(它会提取所有数字并拼接),而是用正则表达式匹配来精准提取连续4位数字,具体操作如下:
- 打开Power Query编辑器,选中目标数据列,点击「添加列」→「自定义列」
- 在公式输入框中,根据你的需求选择对应公式:
- 提取第一个连续4位数字:
(把= Text.RegularExpressions.Regex.Match([你的列名], "\d{4}").Value[你的列名]替换成实际的列名称,比如[字符串列]) - 提取所有连续4位数字(返回列表格式):
= List.Transform(Text.RegularExpressions.Regex.Matches([你的列名], "\d{4}"), each _.Value) - 无匹配时返回
null而非空字符串:= if Text.RegularExpressions.Regex.IsMatch([你的列名], "\d{4}") then Text.RegularExpressions.Regex.Match([你的列名], "\d{4}").Value else null
- 提取第一个连续4位数字:
说明
\d{4}是正则表达式语法,代表匹配连续4位数字Regex.Match只返回第一个匹配结果,Regex.Matches会返回所有匹配项- 若你的Power Query版本较低,可能需要先启用正则表达式功能(一般新版本默认支持)
内容的提问来源于stack exchange,提问作者Catherine Armagost
相关产品推荐
相关产品推荐

