tft每日頭條

 > 生活

 > search函數與find函數的區别

search函數與find函數的區别

生活 更新时间:2025-05-11 18:24:38

search函數與find函數的區别(查找匹配函數FIND和SEARCH的基本用法)1

一、EXCEL中FIND函數和SEARCH函數的用法

FIND函數區分大小寫,不支持通配符

SEARCH 函數不區分大小寫,支持通配符

有這樣一個産品:

search函數與find函數的區别(查找匹配函數FIND和SEARCH的基本用法)2

注:文本 “KitchenAId 和 Stockwell”内有空格

現在我們看這兩個函數的用法:

1.FIND(find_text,within_text, [start_num])

search函數與find函數的區别(查找匹配函數FIND和SEARCH的基本用法)3

注意:FIND 始終返回從 within_text 的起始位置計算的字符編号,如果 start_num 大于 1,則會對跳過的字符計數。

示例:

(1) FIND("k",A2)

該公式 從單元格 A2開始查找第一個“k”的位置,返回18

(2) FIND("en?",A2)

該公式 從單元格查找前兩個字符為“en”,由三個字符組成的字符串,第一次出現的位置,返回錯誤 #VALUE!

2.SEARCH(find_text,within_text,[start_num])

search函數與find函數的區别(查找匹配函數FIND和SEARCH的基本用法)4

示例:

(1) SEARCH("k",A2)

該公式 從單元格 A2開始查找第一個“k”的位置,返回1

(2) SEARCH("en?",A2)

該公式 從單元格查找前兩個字符為“en”,由三個字符組成的字符串,第一次出現的位置,返回 6

二、PowerBI中FIND函數和SEARCH函數的用法

在PowerQuery和PBIDesktop裡有相同行為的函數,小編這裡分别演示:

1、 PowerQuery中M語言的Text類函數

Text類函數可以分為判斷、選擇、操作、查看等幾個類型的函數,這裡介紹一個字符串判斷類函數Text.Contains:

Text.Contains(textas nullable text, substring as text, optional comparer asnullable function) as nullable logical

語義:判斷文本 text 是否包含文本 substring。返回布爾值。

search函數與find函數的區别(查找匹配函數FIND和SEARCH的基本用法)5

示例:

我們将上面的産品名稱複制到PowerQuery中,通過“添加列”選項卡下的“自定義列”功能,新建兩個新列,分别為“自定義1”列和“自定義2”列,查看編輯器返回的結果:

search函數與find函數的區别(查找匹配函數FIND和SEARCH的基本用法)6

可以看到:

Text.Contains([産品名稱],"s")返回的結果是FALSE

Text.Contains([産品名稱],"S")返回的結果是TRUE

2、PowerBIDesktop中DAX函數的查找匹配函數

DAX函數中查找匹配類函數有FIND、SEARCH、LOOKVALUE、CONTAINS、TREATAS、IN等。

今天介紹兩個簡單函數FINDSEARCH,PowerBI中這兩個函數的行為和EXCEL中的行為一緻。在語法上,比EXCEL中多一個第四參數,這個參數一般不可省略。

(1) FIND函數

EN語法:

FIND( FindText, WithinText, [StartPosition], [NotFoundValue] )

CN語法:

FIND( 要查找的文本[FL1] ,包含“要查找的文本”的文本[FL2] ,[指定在WithinText中開始搜索的位置],[指定找不到文本時返回的數值[FL3] ] )

語義:返回一個文本字符串(FindText)在另一個文本字符串(WithinText)内的起始位置。FIND區分大小寫。

返回:要查找的文本字符串起點的數字。

(2) SEARCH函數

EN語法

SEARCH( FindText[FL4] , WithinText,[StartPosition], [NotFoundValue] )

CN語法

SEARCH( 要查找的文本,包含要查找文本的文本,[開始查找位置],[找不到文本時返回的數值] )

語義:返回一個文本字符串(FindText)在另一個文本字符串(WithinText)内的起始位置。SEARCH不區分大小寫。

示例:

我們把産品名稱放在PBI中,新建兩個精确匹配的度量值

"k"的位置_FIND =FIND("k","KitchenAId 和Stockwell",,0)

"k"的位置_SEARCH =SEARCH("K","KitchenAId 和Stockwell",,0)

在報表窗口,我們可以看到,和EXCEL中返回的結果一緻。

search函數與find函數的區别(查找匹配函數FIND和SEARCH的基本用法)7

同時我們新建兩個模糊匹配的度量值:

"k"的位置_FIND_模糊匹配 = FIND("en?","KitchenAId 和Stockwell",,0)

"k"的位置_SEARCH_模糊匹配 = SEARCH("en?","KitchenAId 和Stockwell",,0)

可以看到,和EXECL裡的結果一樣。因為我們這裡指定了第四參數,所以FIND的返回結果為0。

search函數與find函數的區别(查找匹配函數FIND和SEARCH的基本用法)8

三、小編想說

無論是在EXCEL和PBI中,還是在PowerQuery和PowerBIDesktop中,會有很多相同行為的函數。EXCEL裡支持的通配符和PBI中SEARCH函數所支持的通配符相同:

問号“?”,代表任意一個字符

星号“*”,代表任意多個字符

注意一定要在英文狀态下輸入哦!

本期内容就是這些,小夥伴們下期再見!

* PowerPivot工坊原創文章,轉載請注明出處!


延伸閱讀:

使用DAX控制切片器顯示

DAX驅動可視化——使用DAX自定義KPI圖

Power BI可視化 | 自定義可視化頁面主題

一文了解Power BI中DAX公式編輯器的常用快捷鍵

利用DAX實現動态顯示圖表标題


如果您想深入學習微軟Power BI,歡迎登錄網易雲課堂試聽學習我們的“從Excel到Power BI數據分析可視化”系列課程。或者關注我們的公衆号(PowerPivot工坊)後猛戳”在線學習”。

search函數與find函數的區别(查找匹配函數FIND和SEARCH的基本用法)9


長按下方二維碼關注“Power Pivot工坊”獲取更多微軟Power BI、PowerPivot相關文章、資訊,歡迎小夥伴兒們轉發分享~

search函數與find函數的區别(查找匹配函數FIND和SEARCH的基本用法)10

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved