String.prototype.search()

Метод search() виконує пошук збігів між переданим регулярним виразом і об'єктом рядка, на якому викликається.

Спробуйте його в дії

Синтаксис

search(regexp)

Параметри

regexp

Об'єкт регулярного виразу.

Якщо аргументом regexp передано не регулярний вираз, то такий аргумент неявно перетворюється на RegExp за допомогою виклику new RegExp(regexp).

Повернене значення

Індекс першого збігу вмісту рядка з регулярним виразом, або -1 — якщо збігу знайдено не було.

Опис

Коли необхідно дізнатися, чи певний патерн має збіг у рядку, і також його індекс в рядку, слід використовувати search(). (Якщо потрібно просто перевірити, чи він має збіг у рядку, то краще вжити схожий метод test() прототипного об'єкта RegExp, який повертає булеве значення.)

Для отримання докладнішої інформації (але повільнішого виконання) можна використати match() (схожий до методу exec() регулярного виразу).

Приклади

Наступний приклад шукає збіг з двома різними регулярними виразами для ілюстрації різниці між успішним пошуком (додатне значення) та неуспішним (-1)

let str = "hey JudE"
let re = /[A-Z]/g
let reDot = /[.]/g
console.log(str.search(re))    // повертає значення 4 — індекс першої великої літери "J"
console.log(str.search(reDot)) // повертає -1 — не може знайти розділовий знак '.'

Специфікації

Сумісність із браузерами

desktop mobile server
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet Deno Node.js
search
Chrome Full support 1
Edge Full support 12
Firefox Full support 1
Internet Explorer Full support 4
Opera Full support 4
Safari Full support 1
WebView Android Full support 1
Chrome Android Full support 18
Firefox for Android Full support 4
Opera Android Full support 10.1
Safari on iOS Full support 1
Samsung Internet Full support 1.0
Deno Full support 1.0
Node.js Full support 0.10.0
flags
Deprecated Non-standard
Chrome No support No
Edge No support No
Firefox No support 1 –  49
Internet Explorer No support No
Opera No support No
Safari No support No
WebView Android No support No
Chrome Android No support No
Firefox for Android No support 4 –  49
Opera Android No support No
Safari on iOS No support No
Samsung Internet No support No
Deno No support No
Node.js No support No

Дивіться також