Как проверить, содержит ли строка подстроку на JavaScript?

Как проверить, содержит ли строка подстроку на JavaScript?

Большинство современных языков программирования, включая 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?

Не важно, какой способ вы выбираете, главное, чтобы ваш код был читаемым и понятным. Надеюсь, эта статья помогла вам разобраться в проверке наличия подстроки в строке на JavaScript.