JavaScript String search() 方法
- 上一頁 replaceAll()
- 下一頁 slice()
- 返回上一層 JavaScript String 參考手冊
定義和用法
search()
方法將字符串與正則表達式匹配。
注釋:如果搜索值為字符串,則轉換為正則表達式。
search()
方法返回第一個匹配項的索引(位置)。
如果未找到匹配項,則 search()
方法返回 -1
。
提示:search()
方法區分大小寫。
另請參閱:
String search() 與 String indexOf() 的區別
search()
不能采用起始位置參數。
indexOf()
方法無法搜索正則表達式。
String search() 與 String match() 的區別
search()
方法返回第一個匹配的位置。
match()
方法返回匹配數組。
實例
例子 1
搜索 "Blue":
let text = "Mr. Blue has a blue house"; let position = text.search("Blue");
例子 2
搜索 "blue":
let text = "Mr. Blue has a blue house"; let position = text.search("blue");
例子 3
搜索 /Blue/:
let text = "Mr. Blue has a blue house"; let position = text.search(/Blue/);
例子 4
搜索 /blue/
:
let text = "Mr. Blue has a blue house"; let position = text.search(/blue/);
例子 5
不區分大小寫的搜索:
let text = "Mr. Blue has a blue house"; let position = text.search(/blue/i);
語法
string.search(regexp)
參數
參數 | 描述 |
---|---|
regexp |
必需。搜索值。 正則表達式(或將轉換為正則表達式的字符串)。 |
返回值
類型 | 描述 |
---|---|
數字 | 第一個匹配的位置。如果未匹配,則返回 -1 。 |
技術細節
參數 regexp
該參數是要在字符串 string 中檢索的 RegExp 對象,該對象具有指定的模式。如果該參數不是 RegExp 對象,則首先將它傳遞給 RegExp() 構造函數,把它轉換成 RegExp 對象。
返回值
string 中第一個與 regexp 相匹配的子串的起始位置。
注釋:如果沒有找到任何匹配的子串,則返回 -1
。
說明
search()
方法在字符串 string 字符串中檢索與 regexp 相匹配的子串,并且返回第一個匹配子串的第一個字符的位置。如果沒有找到任何匹配的子串,則返回 -1
。
search()
方法不執行全局匹配,它將忽略標志 g
。它同時忽略 regexp 的 lastIndex 屬性,并且總是從字符串的開始進行檢索,這意味著它總是返回 string 的第一個匹配的位置。
正則表達式搜索方法
在 JavaScript 中,正則表達式文本搜索可以用不同的方法完成。
通過將模式作為正則表達式,這些是最常用的方法:
示例 | 描述 |
---|---|
text.match(pattern) | 字符串方法 match() |
text.search(pattern) | 字符串方法 search() |
pattern.exec(text) | 正則表達式方法 exec() |
pattern.test(text) | 正則表達式方法 test() |
瀏覽器支持
search() 是 ECMAScript1 (ES1) 特性。
所有瀏覽器都完全支持 ES1 (JavaScript 1997):
Chrome | IE | Edge | Firefox | Safari | Opera |
---|---|---|---|---|---|
Chrome | IE | Edge | Firefox | Safari | Opera |
支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
- 上一頁 replaceAll()
- 下一頁 slice()
- 返回上一層 JavaScript String 參考手冊