String.prototype.search()
The search()
method executes a search for a match between
a regular expression and this String
object.
Syntax
search(regexp)
Parameters
regexp
-
A regular expression object.
If a non-RegExp object
regexp
is passed, it is implicitly converted to aRegExp
withnew RegExp(regexp)
.
Return value
The index of the first match between the regular expression and the given string, or
-1
if no match was found.
Description
When you want to know whether a pattern is found, and also know its index
within a string, use search()
. (If you only want to know if it exists, use
the similar test()
method on the
RegExp
prototype, which returns a boolean.)
For more information (but slower execution) use match()
(similar to the regular expression exec()
method).
Examples
Using search()
The following example searches a string with two different regex objects to show a
successful search (positive value) vs. an unsuccessful search (-1
)
let str = "hey JudE"
let re = /[A-Z]/g
let reDot = /[.]/g
console.log(str.search(re)) // returns 4, which is the index of the first capital letter "J"
console.log(str.search(reDot)) // returns -1 cannot find '.' dot punctuation
Specifications
Specification |
---|
ECMAScript Language Specification # sec-string.prototype.search |
Browser compatibility
BCD tables only load in the browser