📌  相关文章
📜  如何在javascript中检查字符串是否包含子字符串(1)

📅  最后修改于: 2023-12-03 15:08:54.343000             🧑  作者: Mango

如何在 JavaScript 中检查字符串是否包含子字符串

在编写 JavaScript 应用程序时,经常需要检查字符串是否包含某个特定的子字符串。本文将介绍几种不同的方法来实现这个功能。

1. 使用字符串的 indexOf() 方法

JavaScript 字符串的 indexOf() 方法可以检查一个字符串中是否包含另一个字符串。该方法返回子字符串第一次出现的位置,如果未找到则返回 -1。

const str = "Hello, world!";
const substr = "world";

if (str.indexOf(substr) !== -1) {
  console.log(`${str} 包含了 ${substr} 子字符串`);
} else {
  console.log(`${str} 不包含 ${substr} 子字符串`);
}

上述代码在控制台输出:Hello, world! 包含了 world 子字符串

2. 使用字符串的 includes() 方法

ES6 引入的 includes() 方法可以更简单地检查一个字符串是否包含另一个字符串。该方法返回一个布尔值,表示原字符串是否包含给定的子字符串。

const str = "Hello, world!";
const substr = "world";

if (str.includes(substr)) {
  console.log(`${str} 包含了 ${substr} 子字符串`);
} else {
  console.log(`${str} 不包含 ${substr} 子字符串`);
}

上述代码与前面的代码功能相同,但使用了 includes() 方法。

3. 使用正则表达式匹配

JavaScript 使用正则表达式是一种功能强大的字符串处理方式。可以使用正则表达式来检测字符串是否包含某个子字符串。在正则表达式中使用模式匹配符 [] 可以查找任意一个字符,使用 + 表示匹配一次或多次。

const str = "Hello, world!";
const substr = "world";

const regex = new RegExp(substr, "g");

if (str.match(regex)) {
  console.log(`${str} 包含了 ${substr} 子字符串`);
} else {
  console.log(`${str} 不包含 ${substr} 子字符串`);
}

上述代码同样输出 Hello, world! 包含了 world 子字符串

4. 使用字符串的 search() 方法

search() 方法在字符串中查找指定值的子字符串,并返回子字符串的位置。如果未找到子字符串,则返回 -1。

const str = "Hello, world!";
const substr = "world";

if (str.search(substr) !== -1) {
  console.log(`${str} 包含了 ${substr} 子字符串`);
} else {
  console.log(`${str} 不包含 ${substr} 子字符串`);
}

上述代码与第一种方法类似,但使用了 search() 方法。

以上是 JavaScript 中检查字符串是否包含子字符串的几种方法,可以根据实际需求选择适合自己的方法。