Поиск строки JavaScript
Методы поиска JavaScript
- Строка indexOf()
- Строка lastIndexOf()
- Строка начинается с()
- Строка заканчивается()
Строка JavaScript indexOf()
Метод indexOf()
возвращает индекс (положение) first
появления указанного текста в строке:
Пример
let str = "Please locate where 'locate' occurs!";
str.indexOf("locate");
Примечание
JavaScript считает позиции с нуля.
0 — первая позиция в строке, 1 — вторая, 2 — третья, ...
Строка JavaScript lastIndexOf()
Метод lastIndexOf()
возвращает индекс последнего
вхождения указанного текста в строку:
Пример
let str = "Please locate where 'locate' occurs!";
str.lastIndexOf("locate");
И indexOf()
, и lastIndexOf()
вернуть -1, если текст не найден:
Пример
let str = "Please locate where 'locate' occurs!";
str.lastIndexOf("John");
Оба метода принимают второй параметр в качестве начальной позиции для поиска:
Пример
let str = "Please locate where 'locate' occurs!";
str.indexOf("locate", 15);
Методы lastIndexOf()
выполняют поиск в обратном направлении (с конца к началу), что означает: если второй параметр равен 15
, поиск начинается с позиции 15 и выполняется поиск в начале строки.
Пример
let str = "Please locate where 'locate' occurs!";
str.lastIndexOf("locate", 15);
Поиск строки JavaScript()
Метод search()
ищет в строке указанное значение и возвращает позицию совпадения:
Пример
let str = "Please locate where 'locate' occurs!";
str.search("locate");
Ты заметил?
Два метода indexOf()
и search()
равны ?
Они принимают одни и те же аргументы (параметры) и возвращают одно и то же значение?
Эти два метода НЕ равны. Вот отличия:
- Метод
search()
не может принимать второй аргумент начальной позиции. - Метод
indexOf()
не может принимать мощные значения поиска (регулярные выражения).
Вы узнаете больше о регулярных выражениях в следующей главе.
Соответствие строки JavaScript()
Метод match() ищет в строке совпадение с регулярным выражением и возвращает совпадения в виде объекта Array.
Пример 1
Найдите строку для «ain»:
let text = "The rain in SPAIN stays mainly in the plain";
text.match(/ain/g);
Подробнее о регулярных выражениях читайте в главе JS RegExp .
Примечание
Если регулярное выражение не включает модификатор g (для выполнения глобального поиска), метод match() вернет только первое совпадение в строке.
Синтаксис
string.match(regexp)
regexp | Required. The value to search for, as a regular expression. |
Returns: | An Array, containing the matches, one item for each match, or null if no match is found |
Пример 2
Выполните глобальный поиск без учета регистра «ain»:
let text = "The rain in SPAIN stays mainly in the plain";
text.match(/ain/gi);
Строка JavaScript включает()
Метод includes()
возвращает true, если строка содержит указанное значение.
Пример
let text = "Hello world, welcome to the universe.";
text.includes("world");
Синтаксис
string.includes(searchvalue, start)
searchvalue | Required. The string to search for |
start | Optional. Default 0. Position to start the search |
Returns: | Returns true if the string contains the value, otherwise false |
JS Version: | ES6 (2015) |
Проверьте, содержит ли строка слово «мир», начав поиск с позиции 12:
let text = "Hello world, welcome to the universe.";
text.includes("world", 12);
Поддержка браузера
includes()
является функцией ES6 (JavaScript 2015).
Поддерживается во всех современных браузерах:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
includes()
не поддерживается в Internet Explorer.
Строка JavaScript начинается с()
Метод startsWith()
возвращает true
значение, если строка начинается с указанного значения, в противном случае false
:
Пример
let text = "Hello world, welcome to the universe.";
text.startsWith("Hello");
Синтаксис
string.startsWith(searchvalue, start)
Значения параметров
Parameter | Description |
---|---|
searchvalue | Required. The value to search for. |
start | Optional. Default 0. The position to start the search. |
Примеры
let text = "Hello world, welcome to the universe.";
text.startsWith("world") // Returns false
let text = "Hello world, welcome to the universe.";
text.startsWith("world", 5) // Returns false
let text = "Hello world, welcome to the universe.";
text.startsWith("world", 6) // Returns true
Примечание
Метод startsWith()
чувствителен к регистру.
Поддержка браузера
startsWith()
является функцией ES6 (JavaScript 2015).
Поддерживается во всех современных браузерах:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
startsWith()
не поддерживается в Internet Explorer.
Строка JavaScript заканчивается()
Метод endsWith()
возвращает true
значение, если строка заканчивается указанным значением, в противном случае false
:
Пример
Проверьте, заканчивается ли строка на «Doe»:
var text = "John Doe";
text.endsWith("Doe");
Синтаксис
string.endswith(searchvalue, length)
Значения параметров
Parameter | Description |
---|---|
searchvalue | Required. The value to search for. |
length | Optional. The length to search. |
Проверьте 11 первых символов строки, оканчивающейся на «мир»:
let text = "Hello world, welcome to the universe.";
text.endsWith("world", 11);
Примечание
Метод endsWith()
чувствителен к регистру.
Поддержка браузера
endsWith()
является функцией ES6 (JavaScript 2015).
Поддерживается во всех современных браузерах:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
endsWith()
не поддерживается в Internet Explorer.
Полная ссылка на строку
Для получения полной справки по строкам перейдите на наш:
Полный справочник строк JavaScript .
Справочник содержит описания и примеры всех строковых свойств и методов.