js字符串判断是否包含某个字符(介绍3种方法)

 分类:js知识时间:2023-11-27 07:30:06点击:

我们研究了多种方法来快速检查字符串是否包含 JavaScript 中的子字符串。下面详细介绍3种js字符串判断是否包含某个字符方法。

1.字符串includes()方法

要检查字符串是否包含子字符串,我们可以在字符串上调用 includes() 方法,将子字符串作为参数传递,例如 str.includes(substr)。 如果字符串包含子字符串,includes() 方法返回 true,否则返回 false。

const str = 'Bread and Milk';
const substr1 = 'Milk';
const substr2 = 'Tea';
console.log(str.includes(substr1)); // true
console.log(str.includes(substr2)); // false

注意:

要执行不区分大小写的检查,请在对字符串调用 includes() 之前将字符串和子字符串都转换为小写。

const str= 'Breadand Milk';
const substr = 'milk';
console.log( str.toLowerCase().includes(substr.toLowerCase()) ); // true

2. 字符串 indexOf() 方法

我们还可以使用 indexOf() 方法来检查字符串是否包含子字符串。 我们在字符串上调用 indexOf() 方法,将子字符串作为参数传递。 然后我们将结果与-1进行比较。 例如:

const str= 'Breadand Milk';
const substr1 = 'Milk'; 
const substr2 = 'Tea';
console.log(str.indexOf(substr1) > -1); // true
console.log(str.indexOf(substr2) > -1); // false

indexOf() 方法在字符串中搜索一个值并返回该值第一次出现的索引。 如果找不到该值,则返回 -1。

const str= 'Breadand Milk';
const substr1 = 'Milk'; 
const substr2 = 'Tea';
console.log(str.indexOf(substr1)); // 10
console.log(str.indexOf(substr2)); // -1

这就是为什么我们将 indexOf() 的结果与 -1 进行比较以检查子字符串是否在字符串中。

注意:

要执行不区分大小写的检查,请在对字符串调用 indexOf() 之前将字符串和子字符串都转换为小写。

const str= 'Breadand Milk';
const substr = 'milk';
console.log( str.toLowerCase().indexOf(substr.toLowerCase()) > -1); // true

3.正则表达式匹配

我们可以根据正则表达式模式测试字符串以确定它是否包含

const str = 'Bread and Milk';
console.log(/Milk/.test(str)); // true
console.log(/Tea/.test(str)); // false

使用正则表达式匹配允许我们轻松指定复杂的模式来搜索字符串。

const str = 'Bread and Milk';
// Contains 'sand', 'land', or 'and'?
console.log(/[sl]?and/.test(str)); // true 
// Contains 'book0', 'book1', ..., 'book8' or 'book9'?
console.log(/book(\d)/.test(str)); // false
除注明外的文章,均为来源:老汤博客,转载请保留本文地址!
原文地址: