Большинство современных языков программирования, включая JavaScript, предоставляют возможности для работы со строками и выполнения различных операций с ними. Одной из таких операций является проверка, содержит ли строка определенную подстроку.
В этой статье мы рассмотрим несколько способов проверки наличия подстроки в строке на JavaScript. Давайте приступим.
1. Метод includes()
Метод includes()
позволяет легко проверить, содержит ли строка определенную подстроку. Он возвращает значение true
, если подстрока найдена, и false
, если подстрока отсутствует.
const str = 'Привет, мир!';
const substr = 'мир';
console.log(str.includes(substr)); // true
2. Метод indexOf()
Метод indexOf()
также может быть использован для проверки наличия подстроки в строке. Он возвращает индекс первого вхождения подстроки, если она найдена, или значение -1, если подстрока отсутствует.
const str = 'Привет, мир!';
const substr = 'мир';
console.log(str.indexOf(substr) !== -1); // true
3. Метод search()
Этот метод также позволяет искать подстроку в строке. Он возвращает индекс первого вхождения подстроки, если она найдена, или значение -1, если подстрока отсутствует.
const str = 'Привет, мир!';
const substr = 'мир';
console.log(str.search(substr) !== -1); // true
4. Регулярные выражения
Регулярные выражения предоставляют более мощные возможности для работы со строками. С использованием регулярных выражений можно проверить наличие подстроки в строке с помощью метода test()
.
const str = 'Привет, мир!';
const regex = /мир/;
console.log(regex.test(str)); // true
5. Метод match()
Метод match()
позволяет выполнить поиск строки в регулярном выражении и вернуть массив с результатами.
const str = 'Привет, мир!';
const regex = /мир/;
console.log(str.match(regex)); // ['мир']
6. Метод startsWith()
Метод startsWith()
проверяет, начинается ли строка с указанного значения. Он возвращает значение true
, если строка начинается с подстроки, и false
, если она не соответствует.
const str = 'Привет, мир!';
const substr = 'Привет';
console.log(str.startsWith(substr)); // true
7. Метод endsWith()
Метод endsWith()
проверяет, заканчивается ли строка указанным значением. Он возвращает значение true
, если строка заканчивается подстрокой, и false
, если она не соответствует.
const str = 'Привет, мир!';
const substr = 'мир!';
console.log(str.endsWith(substr)); // true
8. Регистронезависимый поиск
Для регистронезависимого поиска можно использовать флаг i
в регулярном выражении.
const str = 'Hello, World!';
const regex = /world/i;
console.log(regex.test(str)); // true
9. Учет границ слов
Чтобы учесть границы слов при поиске, можно использовать метасимволы \b
в регулярном выражении.
const str = 'Hello, World!';
const regex = /\bWorld\b/;
console.log(regex.test(str)); // true
10. Использование подстроки в условии
Другим способом проверки наличия подстроки в строке является использование оператора сравнения в условии.
const str = 'Привет, мир!';
const substr = 'мир';
if (str.indexOf(substr) !== -1) {
console.log('Подстрока найдена');
} else {
console.log('Подстрока не найдена');
}
11. Функция includesString()
Для удобства проверки наличия подстроки в строке можно создать собственную функцию.
function includesString(str, substr) {
return str.includes(substr);
}
const str = 'Привет, мир!';
const substr = 'мир';
console.log(includesString(str, substr)); // true
12. Заключение
В этой статье мы рассмотрели 12 различных способов проверки наличия подстроки в строке на JavaScript. Каждый из них имеет свои особенности и может быть использован в разных ситуациях. Выбор метода зависит от потребностей программы и конкретной задачи.
Не важно, какой способ вы выбираете, главное, чтобы ваш код был читаемым и понятным. Надеюсь, эта статья помогла вам разобраться в проверке наличия подстроки в строке на JavaScript.