JavaScript String search() 方法在原始字符串中搜索字符串或正则表达式,并返回第一个匹配项的 index(position)。如果未找到匹配项,则返回 -1。
此方法区分大小写,这意味着它将字符串 “Hi” 和 “hi” 视为两个不同的值。但是,您可以通过在正则表达式中使用 /i 标志来使 search() 方法不区分大小写。
注意 − 正则表达式的 'g'(global) 标志对 search() 方法结果没有影响,并且搜索总是像正则表达式 lastIndex 为 0 一样进行。
语法
以下是 JavaScript String search() 方法的语法 -
参数
- regexp − 一个 regexp(正则表达式)对象。
返回值
此方法返回 regexp 和给定字符串之间的第一个匹配项的 index(position)。
示例 1
如果在 regexp 和原始字符串之间找到匹配项,则此方法返回第一个匹配项的索引。
在下面的程序中,我们使用 JavaScript 字符串 search() 方法来匹配和检索原始字符串 “Welcome to qikepu com” 中正则表达式 “/com/i” 的索引(或位置)。
输出
上面的程序将字符串 “com” 的 index(position) 返回为 21。
Original String: Welcome to qikepu com
regexp: /com/i
The sub-string '/com/i' found at position 3
regexp: /com/i
The sub-string '/com/i' found at position 3
示例 2
如果在原始字符串中找不到指定的 regexp,则 search() 方法返回 -1。
以下是 JavaScript String search() 方法的另一个示例。在此示例中,我们使用此方法匹配原始字符串 “Hello World” 中的 regexp '/Hi/'。
输出
执行上述操作后,它将返回 -1。
Original String: Hello World
regexp: /Hi/
The regexp '/Hi/' found at position -1
regexp: /Hi/
The regexp '/Hi/' found at position -1
示例 3
让我们在条件语句中使用方法 result 来检查正则表达式 “/[^\w\P']/;” 和原始字符串 “qikepu com” 之间是否匹配。
输出
以下是上述程序的输出 -
Original String: qikepu com
regexp: /[^\w\P']/
Method returns: 6
Match found
regexp: /[^\w\P']/
Method returns: 6
Match found