Movatterモバイル変換


[0]ホーム

URL:


  1. Веб-технологии для разработчиков
  2. JavaScript
  3. Справочник по JavaScript
  4. Стандартные встроенные объекты
  5. RegExp
  6. RegExp.prototype[@@search]()

This page was translated from English by the community.Learn more and join the MDN Web Docs community.

View in EnglishAlways switch to English

RegExp.prototype[@@search]()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨сентябрь 2016 г.⁩.

Метод[@@search]() выполняет поиск совпадения между регулярным выражениемthis и строкой.

Синтаксис

regexp[Symbol.search](str)

Параметры

str

String, являющийся объектом поиска.

Возвращаемое значение

integer

В случае успеха,[@@search]() вернёт индекс первого совпадения регулярного выражения внутри строки. В противном случае, он вернёт -1.

Описание

Этот метод вызывается внутреннее вString.prototype.search(). Например, два следующих примера вернут один и тот же результат.

js
"abc".search(/a/);/a/[Symbol.search]("abc");

Этот метод существует для настройки поведения поиска в подклассахRegExp.

Примеры

Прямой вызов

Этот метод можно использовать почти так же, какString.prototype.search(), за исключением другогоthis и другого порядка аргументов.

js
var re = /-/g;var str = "2016-01-02";var result = re[Symbol.search](str);console.log(result); // 4

Используя@@search в подклассах

ПодклассRegExp может быть перезаписан с помощью метода[@@search]() для изменения поведения.

js
class MyRegExp extends RegExp {  constructor(str) {    super(str);    this.pattern = str;  }  [Symbol.search](str) {    return str.indexOf(this.pattern);  }}var re = new MyRegExp("a+b");var str = "ab a+b";var result = str.search(re); // String.prototype.search calls re[@@search].console.log(result); // 3

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

Specification
ECMAScript® 2026 Language Specification
# sec-regexp.prototype-%symbol.search%

Совместимость с браузерами

Смотрите также

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp