FIND

返回一个文本字符串在另一个文本字符串中的起始位置。 FIND 区分大小写。

语法

FIND(<find_text>, <within_text>[, [<start_num>][, <NotFoundValue>]])  

parameters

术语定义
find_text要查找的文本。 使用双引号(空文本)匹配 within_text 中的第一个字符
within_text包含要查找的文本的文本。
start_num(可选)从此处开始搜索的字符;如果省略,则 start_num=1。 within_text 中的第一个字符是字符数字 1
NotFoundValue(可选但强烈建议)当运算没有找到匹配的子字符串时返回的值,通常为 0、-1 或 BLANK()。 如果未指定,则返回错误。

返回值

显示要查找的文本字符串的起始点的数字。

备注

  • Microsoft Excel 有多个版本的 FIND 函数,可以适应单字节字符集 (SBCS) 和双字节字符集 (DBCS) 语言,而 DAX 则使用 Unicode 并以相同的方式对每个字符进行计数;因此,你无需根据字符类型使用其他版本。

  • 在已计算的列或行级安全性 (RLS) 规则中使用时,不支持在 DirectQuery 模式下使用此函数。

  • FIND 不支持通配符。 若要使用通配符,请使用 SEARCH

示例

以下 DAX 查询在包含经销商名称的字符串中查找“Bike”的第一个字母的位置。 如果未找到,则返回 Blank。

请记住,使用 FIND 会区分大小写。 此示例中,如果在 <find_text> 参数中使用了“bike”,则不返回任何结果。 若不区分大小写,请使用 SEARCH

可将本文中的示例与 Power BI Desktop 示例模型结合使用。 若要获取模型,请参阅 DAX 示例模型

EVALUATECALCULATETABLE (    ADDCOLUMNS (        TOPN ( 10, SUMMARIZE('Reseller', [Reseller], [Business Type])),        "Position of Bike", FIND ( "Bike", 'Reseller'[Reseller], 1, BLANK () )    ),    'Reseller'[Business Type] IN {  "Specialty Bike Shop", "Value Added Reseller", "Warehouse" })

返回:

ResellerBusiness TypeBike 所在的位置
Volume Bike SellersWarehouse8
Mass Market BikesValue Added Reseller13
Twin CyclesValue Added Reseller
Rich Department StoreWarehouse
Rental GallerySpecialty Bike Shop
Budget Toy StoreWarehouse
Global Sports OutletWarehouse
Online Bike CatalogWarehouse8
Helmets and CyclesValue Added Reseller
Jumbo BikesSpecialty Bike Shop7

另请参阅

SEARCH
文本函数

results matching ""

    No results matching ""