从M中的字符串中提取数字列表(PowerQuery/PowerBI)

从M中的字符串中提取数字列表(PowerQuery/PowerBI),powerbi,powerquery,Powerbi,Powerquery,我在Power Query中有一列文本值(名为“页面”),每行是文本/数字的组合,以“-”分隔,如下所示: Page movie-batmanseries-240000-movie-100000xx-500 345000zz-1.5-1000-starwars5-500000-game 现在,我想为每一行创建一个值列表(分隔符“-”),然后将第一次出现的整数(不是小数)提取到一个新列中 以下是我写的列公式: List.First(List.Select(Text.Split([Page]

我在Power Query中有一列文本值(名为“页面”),每行是文本/数字的组合,以“-”分隔,如下所示:

Page  
movie-batmanseries-240000-movie-100000xx-500 
345000zz-1.5-1000-starwars5-500000-game
现在,我想为每一行创建一个值列表(分隔符“-”),然后将第一次出现的整数(不是小数)提取到一个新列中

以下是我写的列公式:

List.First(List.Select(Text.Split([Page],"-"), each Number.IsNaN(_) = false))
但我收到的“错误”值包含以下细节:

无法将值“345000zz”转换为类型编号

有什么解决办法吗

这应该有效:

List.First(List.Select(Text.Split([Page],“-”),每个Number.Mod(try Number.From(_))否则为null,1=0))


由于Text.Split将以文本格式返回,您需要先转换为数字,然后再检查它是否为整数((number.Mod,1)=0)。除此之外,如果无法转换为数字,您还需要考虑返回的错误(尝试…否则)。

好吧,它不是数字。在将值转换为数字之前,需要先拆分zz字符。但我想跳过任何文本和数字组合的值(使用“-”分隔符拆分后),只保留数字列表,然后选择第一个列表成员