JavaScript中的字符串如何找出子字符串?

这里分享几种方案:

  1. 采用ES6 includes 方法
    用法: str.includes(searchString, position)
    searchString: 需要搜索的字符串
    position: 从哪个接口索引开始搜索子字符串
var str = 'abc'
var select =  'a'
str.includes(select,0)  // true
注意:
  • 兼容性不好
  • IE浏览器低版本不能使用

2.ES5 indexOf
返回字符串的当前位置,如果找不到就会返回-1

var str = 'abc'
var select =  'a'
str.indexOf(select)  !== -1   // true

3.利用search 筛选
可以利用正则规则查询,并且返回第一个查询的出现位置

var str = 'abac'
var select =  /a/
str.search(select)  // 0
注意:
  • 如果你区分大小写的话
var str = 'Abac'
var select =  /a/i
str.search(select)  // 0
// 相当于 str.toLowerCase().indexOf(select).toLowerCase()

4.RegExp 正则匹配

var str = 'Abac'
var select =  /a/i
select.test(str)  // true

注意:

使用正则表达式查询会造成一些额外的开销,影响一定的性能,如果在比较复杂的计算中

  1. match()
    会返回匹配的规则信息,配置,查询的字段
    image.png

6.使用类库的属性方法:

var str = "abca";
 var select = "a";
_.includes(str, select);  // true

参考资料:
https://stackoverflow.com/questions/1789945/how-to-check-whether-a-string-contains-a-substring-in-javascript/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿冰介

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值