--- title: String.prototype.search() slug: Web/JavaScript/Reference/Global_Objects/String/search tags: - JavaScript - Prototype - String - Довідка - Регулярний вираз translation_of: Web/JavaScript/Reference/Global_Objects/String/search ---
{{JSRef}}

Метод search() здійснює пошук у рядку за вказаним регулярним виразом.

Синтаксис

str.search(regexp)

Параметри

regexp
Об'єкт регулярного виразу. Якщо передати значення value іншого типу, його буде зведено до {{jsxref("RegExp")}} за допомогою оператора new RegExp(value).

Вертає

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

Опис

Метод search() використовується тоді, коли треба не лише знати, чи містить рядок відповідну послідовність, а й з'ясувати, в якому саме місці вона починається. Натомість можно скористатися методом {{jsxref("RegExp.prototype.test()")}}, що вертає boolean, якщо треба з'ясувати лише наявність такої послідовності.
Ще детальнішу інформацію про результат пошуку (коштом нижчої швидкодії) можна отримати за допомогою метода {{jsxref("String.prototype.match()", "match()")}} або {{jsxref("RegExp.prototype.exec()")}}.

Приклади

Використання search()

В цьому прикладі наведено успішний пошук (метод вертає невід'ємне значення):

var str = "Красно дякую, панове!";

// Шукаємо послідовність із шести рядкових (маленьких) літер.
var pattern = /[а-я]{6}/g;
console.log(str.search(pattern));  // вертає 14, що є індексом літери «п»

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

var str = "Щиро вітаю, друже мій!";
var pattern = /[.]/g;
console.log(str.search(pattern));  // вертає -1

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

Специфікація Статус Коментар
{{SpecName('ES3')}} {{Spec2('ES3')}} Початкова виознака, запроваджено у JavaScript 1.2.
{{SpecName('ES5.1', '#sec-15.5.4.12', 'String.prototype.search')}} {{Spec2('ES5.1')}}  
{{SpecName('ES6', '#sec-string.prototype.search', 'String.prototype.search')}} {{Spec2('ES6')}}  
{{SpecName('ESDraft', '#sec-string.prototype.search', 'String.prototype.search')}} {{Spec2('ESDraft')}}  

Підтримка веб-переглядачами

{{Compat("javascript.builtins.String.search")}}

Зауваги щодо Gecko

Див. також