在 JavaScript 中查找子字符串
许多编程语言提供了一种简单的方法来检查字符串是否包含特定子字符串。然而,尽管如此,JavaScript 语言并没有专用的 String.contains() 方法。
寻找解决方案
对于 JavaScript 开发人员来说,有多种替代方案检测子字符串:
String.prototype.includes (ES6 ):
ECMAScript 6 中引入,该方法返回一个布尔值,指示字符串是否包含指定的子字符串。
const string = "foo"; const substring = "oo"; console.log(string.includes(substring)); // true
String.prototype.indexOf:
此方法返回字符串中子字符串的第一个索引,如果是则返回 -1没有找到。您可以检查索引是否大于或等于0来确定子字符串是否存在。
const string = "foo"; const substring = "oo"; const index = string.indexOf(substring); console.log(index !== -1); // true
String.prototype.search:
与indexOf类似,但执行正则表达式搜索。它返回第一个匹配的索引,如果没有找到则返回-1。但是,由于子字符串默认不是正则表达式,因此您需要在子字符串前添加 .
const string = "foo"; const substring = "oo"; const index = string.search(`\${substring}`); console.log(index !== -1); // true
String.prototype.match:
此方法返回在字符串中找到的匹配项的数组。如果数组至少有一项,则子字符串存在。
const string = "foo"; const substring = "oo"; const matches = string.match(substring); console.log(matches.length > 0); // true
结论:
虽然 JavaScript 没有专用的 contains 方法,但开发人员有几个检查子字符串的可行选项,每个选项都有自己的性能特征和特定用例的适用性。
以上是如何高效地检查 JavaScript 中的子字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!