FIND

適用於:匯出數據行計算數據表量值視覺計算

傳回一個文字字串在另一個文字字串中的起始位置。 FIND 區分大小寫。

語法

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

參數

術語 定義
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

  • 這個函式會根據 你模型的 UnicodeCharacterBehavior 設定而回傳不同的結果。

下列 DAX 查詢會在包含轉銷商名稱的字串中尋找 “Bike” 第一個字母的位置。 若未找到,則返回 FIND 空白。

FIND 區分大小寫。 在這個例子中,如果你在參數中使用「bike」 find_text ,查詢則不會回傳任何結果。 使用 SEARCH 不區分大小寫。

本文中的範例可以搭配範例 Adventure Works DW 2020 Power BI Desktop 模型使用。 若要取得模型,請參閱 DAX 範例模型

EVALUATE
CALCULATETABLE (
    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" }
)

返回

轉銷商 商務類型 自行車的位置
大量自行車銷售人員 倉庫 8
大眾市場自行車 增值轉銷商 13
對應項迴圈 增值轉銷商
富裕百貨 倉庫
出租畫廊 專業自行車店
預算玩具商店 倉庫
全球體育網點 倉庫
在線自行車目錄 倉庫 8
頭盔和迴圈 增值轉銷商
巨無霸自行車 專業自行車店 7