分享

Power Query 文本批量替换

 剩矿空钱 2019-08-06

在左侧的句子中用右侧的对照表批量替换单词。

Power Query 文本批量替换

Power Query提供了丰富的函数来进行文本处理,我们用系统提供的函数就可以完成单词替换,需要了解下面四个函数:

  • List.ReplaceMatchingItems
  • Text.SplitAny
  • Text.Combine
  • Table.ToRows

List.ReplaceMatchingItems

这个函数是实现批量替换的核心函数,需要两个参数:

原列表:把句子拆分成单词列表

替换列表:把替换单词对照表,转换成需要的列表,替换列表的结构是个样子的

{{原单词,替换单词},{原单词,替换单词},{原单词,替换单词},,,,}

Text.SplitAny

把句子拆分成单词列表,两个参数,文本和分割符。

Power Query 文本批量替换

Text.Combine

文本合并函数,是Text.SplitAny函数的逆过程,也是两个参数,文本列表与分割符。我们拆分替换结束的结果是个单词列表,还需要再拼接起来。

Table.ToRows

这个函数是把表格根据行来转换成列表,这种列表正好符合List.ReplaceMatchingItems函数第二参数的要求,是两两单词组成的列表。

Power Query 文本批量替换

其实我们不用去管具体是怎么替换的,只要按照要求提供参数就可以了:

Power Query 文本批量替换

=Text.Combine(

List.ReplaceMatchingItems(

Text.SplitAny([Text],' '),

Table.ToRows(Replacements)),

' ')

这个公式就很好理解了,批量替换的原列表由Text.SplitAny提供,替换列表由Table.ToRows提供,批量替换结束后是这样子:

Power Query 文本批量替换

然后用Text.Combine函数将替换结果合并起来就可以了。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多