JS 中判断某个字符串是否包含另一个字符串的五种方法

1,790 阅读1分钟

JS 中判断某个字符串是否包含另一个字符串的五种方法

一、String 对象的方法

方法一: indexOf() (推荐) 返回某个指定的字符串值在字符串中首次出现的位置,没有则返回-1

const str = '123'
console.log(str.indexOf('2') != -1) // true

方法二:match() 在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。

const str = '123'
const reg = RegExp(/3/)
if (str.match(reg)) {
  //包含;
}

方法三: search() 用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。没有任何匹配的子串,则返回 -1。

const str = '123'
console.log(str.search('2') != -1) // true

二、RegExp 对象的方法

方法四: test() 检索字符串中指定的值,返回 true /false。

const str = '123'
const reg = RegExp(/3/)
console.log(reg.test(str) != -1) // true

方法五:exec() 检索字符串中的正则表达式的匹配。返回一个数组,其中存放匹配的结果。没有则返回 null。

const str = '123'
const reg = RegExp(/3/)
if (reg.exec(str)) {
  //包含;
}