📅  最后修改于: 2023-12-03 15:08:54.343000             🧑  作者: Mango
在编写 JavaScript 应用程序时,经常需要检查字符串是否包含某个特定的子字符串。本文将介绍几种不同的方法来实现这个功能。
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 子字符串
includes()
方法ES6 引入的 includes()
方法可以更简单地检查一个字符串是否包含另一个字符串。该方法返回一个布尔值,表示原字符串是否包含给定的子字符串。
const str = "Hello, world!";
const substr = "world";
if (str.includes(substr)) {
console.log(`${str} 包含了 ${substr} 子字符串`);
} else {
console.log(`${str} 不包含 ${substr} 子字符串`);
}
上述代码与前面的代码功能相同,但使用了 includes()
方法。
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 子字符串
。
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 中检查字符串是否包含子字符串的几种方法,可以根据实际需求选择适合自己的方法。