在javascript中检查字符串中子串的3种方法

89 阅读1分钟

这篇文章涵盖了检查给定字符串在给定输入中是否存在的不同方法。

在javascript中,有很多方法可以对给定的输入字符串进行子串检查

  • ES6包括
  • ECMAScript5 indexOf
  • ES5搜索方法

ECMAScript5 indexOf方法

indexOf方法是一个在ES6中实现的本地javascript方法,它返回在给定字符串中匹配的子串的位置,如果没有找到,则返回-1。

下面是一个例子

const input = "cloudhadoop";
const string = "cloud";
const string1="welcome";

console.log(input.indexOf(string));  //returns 0
console.log(input.indexOf(string1));// returns -1

检查在一个字符串中找到的给定子串

完整的例子

if (input.indexOf("string") >= 0){
    console.log("substring found in a given input")
}

搜索的JavaScript方法

搜索是javascript中的一个内置方法,返回一个字符串在给定输入字符串中的位置。它接受一个字符串或一个正则表达式作为参数。它返回元素的位置,如果没有找到元素,则返回01。

  const string = "Hello Cloud"; 
  const result = string.search("Cloud");
  console.log(result);

search 并且indexOf ,不检查字符串的大小写。

ES6包括方法

作为JavaScript语言的一部分,includes 方法在ES6别名ECMAScript 6版本中实现。它使用一个字符串参数,与输入字符串进行比较。

它返回真或假的布尔值。

这里有一个全面的例子。

const input = "cloudhadoop";
const string = "cloud";
const string1="welcome";

console.log(input.includes(string)); // true
console.log(input.includes(string1)); // false

唯一的缺点是这个方法不支持IE11浏览器。你可以为此写一个polyfill。