美文网首页BI学习笔记
函数周期表丨模糊匹配

函数周期表丨模糊匹配

作者: Fabric丨白茶 | 来源:发表于2021-04-11 11:59 被阅读0次

    CONTAINSSTRING函数

    CONTAINSSTRINGEXACT函数

    CONTAINSSTRING函数被微软划分为“信息”函数,属于“值函数”,根据判定结果返回TRUE或者FALSE。

    CONTAINSSTRINGEXACT函数和其效果几乎是完全一样。

    二者总体来说使用的方式差不多,一些细节的地方有些出入,都是用来检查字符是否被包含。

    用途:可用于模糊匹配或者查询匹配。

    原本白茶的计划是按照微软的函数划分对函数进行逐个的讲解,
    但是在2020.9月底左右,微软修改了DAX函数的类别划分,
    一度导致白茶的函数思路崩溃...
    白茶思考了很久,决定摒弃掉之前的思路,按照函数的实际用途去阐述,总体风格会有细节上的变动。

    语法

    语法1:

    DAX=CONTAINSSTRING(<within_text>, <find_text>)
    

    语法2:

    DAX=CONTAINSSTRINGEXACT(<within_text>, <find_text>)
    

    参数

    within_text:被查找的范围。

    find_text:需要查找的文本内容。

    返回结果

    TRUE或者FALSE

    区别

    CONTAINSSTRING支持通配符,不区分大小写;

    CONTAINSSTRINGEXACP不支持通配符,区分大小写。

    通配符规则

    • 问号(?):问号匹配任何单个字符

    • 星号(*):星号匹配任何字符序列

    • 如果你想找到的是问号或星号本身,请在字符前键入一个波浪号(~)

    例子

    例子1:

    输入如下代码。

    CONTAINSSTRING =
    ROW (
        "例子1", CONTAINSSTRING ( "红橙黄绿", "橙黄" ),
        "例子2", CONTAINSSTRING ( "红橙黄绿", "橙绿" ),
        "例子3", CONTAINSSTRING ( "红橙黄绿", "橙*绿" ),
        "例子4", CONTAINSSTRING ( "红橙黄绿", "黑白" )
    )
    

    结果如下:

    结果一目了然,根据查找内容决定输出结果。

    例子2:

    模拟数据:

    这是白茶随机模拟的数据,之前的一期白茶使用过这个案例数据。

    传送门:《销售需求丨查找问题》

    在这个情境中,也可以使用本期的函数来进行单个颜色的模糊匹配。

    代码1:

    CONTAINSSTRING =
    VAR SLL =
        VALUES ( '维度'[维度] )
    VAR SQL =
        MAX ( '事实表'[颜色] )
    RETURN
        IF ( CONTAINSSTRING ( SQL, SLL ), SQL )
    

    代码2:

    CONTAINSSTRINGEXACT =
    VAR SLL =
        VALUES ( '维度'[维度] )
    VAR SQL =
        MAX ( '事实表'[颜色] )
    RETURN
        IF ( CONTAINSSTRINGEXACT ( SQL, SLL ), SQL )
    

    其结果如下:

    小伙伴们❤GET了么?

    白茶会不定期的分享一些函数卡片

    (文件在知识星球[PowerBI丨需求圈])

    这里是白茶,一个PowerBI的初学者。

    相关文章

      网友评论

        本文标题:函数周期表丨模糊匹配

        本文链接:https://www.haomeiwen.com/subject/ipxnuktx.html