power bi文本,截取及查找函数

1. 文本函数

1.concatenate函数

  • 将两个字符串连接
  • 格式:concatenate(<文本/数字>,<文本/数字>)
  • 例子
    1 = CONCATENATE([文本1],[文本2])2 = CONCATENATE([数字1],[数字2])3 = CONCATENATE([数字1],[文本2])
    
    在这里插入图片描述

2. exact 函数

  • 判断字符是否相同,文本和数字都可以判断
  • 格式:exact(<文本/数字>,<文本/数字>)
  • 例子
    1 = EXACT([文本1],[文本2])2 = EXACT([数字1],[数字2])
    
    在这里插入图片描述

3. find函数

  • 含义:找字符串在另一个字符串的起始位置
  • 区分大小写,不支持通配符
  • 格式:find(<待查找的内容>,<查找范围>,[<起始位置>],[<备选位置>])
  • 参数含义
参数属性描述
待查找的内容要找的文本,使用双引号(空文本)匹配查找中的第一个字符;不允许使用通配符
查找范围包含要查找的文本的文本
起始位置可选开始搜索的位置;如果省略,则起始位置=1,也就是查找范围中的第一个字符
备选结果可选未找到文本时返回的数值,可设为0,-1或blank();如果省略,则返回错误
  • 例子
    = find([子串],[字符串],1,blank())
    
    在这里插入图片描述

4. search函数

  • 含义:找字符串在另一个字符串的起始位置
  • 不区分大小写,支持通配符
    • 如果要查找的字符是?或*号本身,需要在?或*前面加一个~转义字符
  • 格式:search(<待查找的内容>,<查找范围>,[<起始位置>],[<备选位置>])
  • 参数含义
参数属性描述
待查找的内容要找的文本,使用双引号(空文本)匹配查找中的第一个字符;不允许使用通配符
查找范围包含要查找的文本的文本
起始位置可选开始搜索的位置;如果省略,则起始位置=1,也就是查找范围中的第一个字符
备选结果可选未找到文本时返回的数值,可设为0,-1或blank();如果省略,则返回错误
  • 例子
    = search([子串],[字符串],1,blank())2 = search("孙?华",[字符串],1,blank())
    
    在这里插入图片描述

2. 截取函数

函数描述
left([字段名],取几个字符)从左向右取
right([字段名],取几个字符)从右向左取
mid([字段名],从第几个开始取,取几个字符)从中间开始取
len([字段名])字段长度
  • 例子
    left = left([字符串],2)
    right = right([字符串],2)
    mid = mid([字符串],2,3)
    len = len([字符串])
    
    在这里插入图片描述

1. fixed 函数

  • 数值转字符按指定小数位四舍五入
  • 将数值舍入到指定的小数位数并将结果返回为文本,可以指定返回的结果是否包含逗号
  • 格式:fixed(<数字>,[<小数位数>],[<逻辑值>])
参数属性含义
数字要舍入并转换为文本的数字,或包含数字的列
小数位数可选小数点右侧的位数;如果省略,则为2
逻辑值可选一个逻辑值:如果为1,则不再返回的文本中显示逗号;如果为0,再返回文本中返回逗号
  • 例子
    = fixed([数值],2,1)2 = fixed([数值],2,0)
    
    在这里插入图片描述

2. 大小写转换

函数描述
lower(<文本>)转小写
upper(<文本>)转大写
  • 例子
    lower = lower([1])
    upper = upper([1])
    
    在这里插入图片描述

3. trim函数

  • 删除文本前后的所有空格和单词之间多余的空格,保留内部的单个空格
  • 格式:trim( )
  • 例子
    1 = trim("   hello        world  ")
    
    在这里插入图片描述

4.rept函数

  • 重复字符串:按给定的次数重复文本
  • 格式:rept( ,<重复次数>)
    • 如果重复次数为0,返回空白
    • 重复次数不为整数,则截取该值
  • 例子
    1 = rept([文本2],3)
    
    在这里插入图片描述

5. replace 函数

  • 指定位置的字符串替换为新的字符串
  • 如果替换的长度为空,或引用包含空值的列,则替换内容字符串插入到起始位置,不替换任何字符。
  • 格式:replace(<文本>,<起始位置>,<替换长度>,<替换内容>)
    参数描述
    文本包含要替换的文本字符串,或对文本列的引用
    起始位置要替换的内容在原文本中的起始位置
    替换长度要替换的字符数
    替换内容用于替换原文中指定字符的替换文本
  • 例子
    = replace([字符串],3,3,"张三")
    
    在这里插入图片描述

6. substitute函数

  • 按指定内容替换字符串

  • 区分大小写

  • 格式:substitute(<文本>,<替换哪些内容>,<新内容>,[<匹配项>])

    参数属性描述
    文本要在其中替换字符的文本或对文本的列的引用
    替换内容要替换的现有文本
    新内容要替换后的新文本
    匹配项可选替换内容的匹配项,省略,全部替换
  • 例子

    = substitute([字符串],"孙兴华","张三")
    

    在这里插入图片描述

3. 查找匹配函数

1 contains函数

  • 多条件查找,只检查精确匹配,允许组合多列作为条件

  • 格式:contains([table],[columnName],[value],[columnName],[value],…)

    参数属性描述
    table物理表或表的表达式
    columnName可重复使用标准SAX语法的现有列的名称,不支持表达式
    value可重复任何返回单个标量值的DAX表达式,该值在columnname中查找
  • 例子:度量值

    是否购买过=CONTAINS('表','表'[日期],DATE(2020,12,2),'表'[姓名],"李四")
    

    在这里插入图片描述

2. treatas 函数

  • 无关系情况下查找匹配
  • 格式:treatas(table_expression,[<column>[,<column>[,…]]])
  • 作用:把什么当做什么
  • 解释:就是把参数一当做参数而的筛选器,用过一参筛选二参(一参需是一端)
  • 例子:根据日期表筛选日期,查找相应销售表日期销售
    月度销售目标 = calculate(sum('销售目标'[销售目标]),TREATAS(values('日期表'[]),'销售目标'[月份]))
    -- 多条件筛选
    --年月销售目标1 = CALCULATE (SUM ( '销售目标'[销售目标] ),TREATAS ( VALUES ( '日期表'[年] ), '销售目标'[年份] ),TREATAS ( VALUES ( '日期表'[月] ), '销售目标'[月份]))
    
    在这里插入图片描述

3. ContainsString函数

  • 检查字符串是否被包含,包含返回true,不包含返回False

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

    通配符含义
    ?匹配任何单个字符
    *匹配任何字符序列
  • 格式:ContainsString(原文本,查找的文本)

  • 例子

    CONTAINSSTRING1 = CONTAINSSTRING([字符串],"孙兴华")
    CONTAINSSTRING2 = CONTAINSSTRING([字符串],"vba")
    

    在这里插入图片描述

4. ContainsStringExact函数

  • 检查字符串是否被包含,包含返回true,不包含返回False
  • 不支持通配符,区分大小写
  • 格式:ContainsStringExact(原文本,查找的文本)
  • 例子
    CONTAINSSTRINGEXACT1 = CONTAINSSTRINGEXACT([字符串],"孙兴华")
    CONTAINSSTRINGEXACT2 = CONTAINSSTRINGEXACT([字符串],"vba")
    
    在这里插入图片描述
  • 21
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荼靡~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值