本文來源於www.contextures.com,由完美Excel翻譯,稍有補充和修改,特輯錄於此,分享與大家共同學習。
微信公眾號:excelperfect
SEARCH函數在另一個文本字符串中查找文本字符串,如果找到則返回其位置,不區分大小寫。
什麼情況下使用SEARCH?
SEARCH函數在字符串中查找另一字符串,可以:
在字符串中找到另一個字符串——不區分大小寫
在搜索中使用通配符
在搜索文本中指定開始數字
SEARCH函數的語法
SEARCH函數的語法如下:
SEARCH(find_text,within_text,start_num)
§ind_text是要搜索的文本
§within_text是供搜索的字符串
§如果忽略start_num,那麼從第一個字符開始搜索
SEARCH函數陷阱
SEARCH函數返回第一個匹配的字符串的位置,忽略大小寫。如果想要區分大小寫的搜索,那麼使用FIND函數。
示例1: 在字符串中查找文本
使用SEARCH函數查找文本字符串中的文本。本例中,在單元格B2的文本字符串中查找單元格B5中的單個字符。
=SEARCH(B5,B2)
如果找到文本,那麼SEARCH函數返回該文本在文本字符串中開始出現的位置的數字。如果沒有找到,那麼結果為#VALUE!錯誤。
可以使用IFERROR函數嵌套SEARCH函數,如果結果是一個錯誤,那麼顯示一條消息。IFERROR函數在Excel 2007及更新的版本中可用。對於更早的版本,可以使用IF函數和ISERROR函數。
=IFERROR(SEARCH(B5,B2),」NotFound」)
示例2: 在SEARCH中使用通配符
檢查SEARCH函數結果的另一種方式是結合使用ISNUMBER函數。如果找到字符串,那麼SEARCH函數的結果是一個數字,因此ISNUMBER函數的結果為TRUE。如果沒有找到文本,那麼SEARCH函數的結果是錯誤值,ISNUMBER函數返回FALSE。
也可以在參數find_text中使用通配符。*(星號)代表任意數量的字符(包括0個),而?(問號)代表單個的字符。
本例中使用 * 通配符,在街道地址中將會找到所有的central、center和centre。
=ISNUMBER(SEARCH($E$2,B3))
示例3: 為SEARCH指定開始數字
通過在ISNUMBER函數前面輸入兩個減號(雙一元符號),能夠替換TRUE或者FALSE而返回1或者0。那麼,在單元格E2中SUM函數可以統計找到的文本字符串的記錄數。
本例在列B中為City(城市)和Occupation(職業),查找含有單元格E1中輸入的文本字符串的所有職業。在單元格C2中的公式是:
=--ISNUMBER(SEARCH($E$1,B2))
這個公式查找到包含「bank」的字符串,但是這些字符串的一部分是City名,不是職業。
在每個城市名之後有一個管道符,因此能夠為此添加一個SEARCH函數,其返回的位置能夠被作為主SEARCH函數的start_number參數使用,因此,在搜索時城市將被忽略。
現在,使用修訂的公式,僅統計職業中含有「bank」的行。
=--ISNUMBER(SEARCH($E$1,B2,SEARCH(「|」,B2)))
---
如果您對本文介紹的內容有什麼建議或好的示例,歡迎發送郵件給我:xhdsxfjy@163.com。
您也可以在本文下發表留言,留下您的足跡。
轉載本文請聯繫我或者註明出處。
關注《完美Excel》微信公眾帳號:
方法1—點擊右上角的按鈕,選擇「查看公眾號」,點擊關注
方法2—在添加朋友中搜索excelperfect
方法3—掃一掃下面的二維碼