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的初学者。
网友评论