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 為單位元組字元集 (SBCS) 和雙位元組字元集 (DBCS) 語言提供不同版本的 FIND 函式,但 DAX 會使用 Unicode 並以相同方式來計算每個字元;因此,您不需要根據字元類型來使用不同的版本。
在計算結果欄或資料列層級安全性 (RLS) 規則中使用時,不支援在 DirectQuery 模式中使用此函式。
FIND 不支援萬用字元。 若要使用萬用字元,請使用 SEARCH。
範例
下列 DAX 查詢會在包含轉銷商名稱的字串中,尋找「Bike」第一個字母的位置。 如果找不到,則會傳回 Blank。
請記住,FIND 會區分大小寫。 在此範例中,如果在 <find_text> 引數中使用「bike」,則不會傳回任何結果。 使用 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"}
)
會傳回:
Reseller | Business Type | 自行車的位置 |
---|---|---|
大量自行車銷售人員 | 倉庫 | 8 |
大眾市場自行車 | Value Added Reseller | 13 |
協力車 | Value Added Reseller | |
Rich 百貨公司 | 倉庫 | |
租賃庫 | Specialty Bike Shop | |
平價玩具店 | 倉庫 | |
全球體育購物中心 | 倉庫 | |
線上自行車目錄 | 倉庫 | 8 |
安全帽與機車 | Value Added Reseller | |
巨無霸自行車 | Specialty Bike Shop | 7 |
相關內容
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應