
SEARCH、SEARCHB 函數(shù)
本文介紹MicrosoftExcel中SEARCH和SEARCHB函數(shù)的公式語法和用法。
說明SEARCH和SEARCHB函數(shù)可在第二個文本字符串中查找第一個文本字符串,并返回第一個文本字符串的起始位置的編號,該編號從第二個文本字符串的第一個字符算起。例如,若要查找字母“n”在單詞“printer”中的位置,可以使用以下函數(shù):
=SEARCH(“n”,”printer”)
此函數(shù)會返回4,因為“n”是單詞“printer”的第四個字符。
也可以在一個單詞中搜索另一個單詞。例如,以下函數(shù):
=SEARCH(“base”,”database”)
會返回5,因為單詞“base”是從單詞“database”的第五個字符開始的。使用SEARCH和SEARCHB函數(shù)可以確定某個字符或文本字符串在另一個文本字符串中的位置,然后可使用MID和MIDB函數(shù)返回文本,或使用REPLACE和REPLACEB函數(shù)更改文本。本文中的示例1中演示了這些函數(shù)。
重要:
這些函數(shù)可能并不適用于所有語言。
只有在將DBCS語言設置為默認語言時,函數(shù)SEARCHB才會將每個字符按2個字節(jié)計數(shù)。否則,函數(shù)SEARCHB的行為與SEARCH相同,即將每個字符按1個字節(jié)計數(shù)。
支持DBCS的語言包括日語、中文(簡體)、中文(繁體)以及朝鮮語。
語法SEARCH(find_text,within_text,[start_num])
SEARCHB(find_text,within_text,[start_num])
SEARCH和SEARCHB函數(shù)具有下列參數(shù):
find_text????必需。要查找的文本。
within_text????必需。要在其中搜索find_text參數(shù)的值的文本。
start_num????可選。within_text參數(shù)中從之開始搜索的字符編號。
備注
SEARCH和SEARCHB函數(shù)不區(qū)分大小寫。如果要執(zhí)行區(qū)分大小寫的搜索,可以使用FIND和FINDB函數(shù)。
可以在find_text參數(shù)中使用通配符?(問號(?)和星號(*))?。問號匹配任意單個字符;星號匹配任意一串字符。如果要查找實際的問號或星號,請在字符前鍵入波形符(~)。
如果找不到find_text的值,則#VALUE!錯誤值。
如果省略了start_num參數(shù),則假設其值為1。
如果start_num不大于0(零)或大于within_text參數(shù)的長度,則#VALUE!錯誤值。
可以使用start_num來跳過指定數(shù)目的字符。以SEARCH函數(shù)為例,假設要處理文本字符串“AYF0093.YoungMensApparel”。若要在文本字符串的說明部分中查找第一個“Y”的位置,請將start_num設置為8,這樣就不會搜索文本的序列號部分(即本例中的“AYF0093”)。SEARCH函數(shù)從第8個字符開始,在下一個字符處查找在find_text參數(shù)中指定的字符,并返回數(shù)字9。SEARCH函數(shù)總是返回從within_text參數(shù)的起始位置計算的字符的編號,如果start_num參數(shù)大于1,則會計算跳過的字符。
示例復制下表中的示例數(shù)據(jù),然后將其粘貼進新的Excel工作表的A1單元格中。要使公式顯示結果,請選中它們,按F2,然后按Enter。如果需要,可調(diào)整列寬以查看所有數(shù)據(jù)。
數(shù)據(jù)
Statements
ProfitMargin
margin
The”boss”ishere.
公式
說明
結果
=SEARCH(“e”,A2,6)
單元格A2中的字符串中,從第6個位置起,第一個“e”的位置。
7
=SEARCH(A4,A3)
“margin”(要搜索的字符串位于單元格A4中)在“ProfitMargin”(要搜索的字符串位于單元格A3中)中的位置。
8
=REPLACE(A3,SEARCH(A4,A3),6,”Amount”)
首先在單元格A3中搜索“Margin”的位置,然后將該字符以及接下來的五個字符替換為字符串“Amount”,從而實現(xiàn)將“Margin”替換為“Amount”的目的。
ProfitAmount
=MId(A3,SEARCH(“”,A3)+1,4)
返回“ProfitMargin”(單元格A3)中第一個空格字符后的前四個字符。
Marg
=SEARCH(“”””,A5)
單元格A5中第一個雙引號標記(“)的位置。
5
=MId(A5,SEARCH(“”””,A5)+1,SEARCH(“”””,A5,SEARCH(“”””,A5)+1)-SEARCH(“”””,A5)-1)
僅返回單元格A5中被雙引號括起來的文本。
boss

