• 技术文章 >web前端 >前端问答

    es6怎么判断字符串中是否有某个字符串

    青灯夜游青灯夜游2023-01-16 17:23:04原创55

    判断方法:1、利用includes(),语法“str.includes(searchString[, position])”;2、利用indexOf(),语法“str.indexOf(substring)”,如果返回“-1”则没有;3、利用test()、match()或search()配合正则表达式查找,语法“exp.test(str)”、“str.match(exp)”。

    本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。

    es6判断字符串是否包含子字符串的方法

    方法1:利用includes()函数

    ES6的字符串新增了includes方法,我们可以用它来判断是否包含子字符串。

    str.includes(searchString[, position])
    'Blue Whale'.includes('Blue'); // returns true
    'Blue Whale'.includes('blue'); // returns false

    需要注意的是,includes方法是会区分大小写。

    对于不支持es6的浏览器,可以添加es6-shim,如:

    require('es6-shim')

    方法2:利用indexOf()函数

    indexOf是我们比较常用到判断是否包含子字符串的方法。如果包含子字符串,返回子字符串的索引,否则返回-1。

    var string = "foo",
        substring = "oo";
    if(string.indexOf(substring) == -1) {
      console.log("不包含子字符串")
    } else {
      console.log("包含子字符串")
    }

    方法3:利用正则表达式

    使用正则表达式有三种方式:test,match,search

    1、test

    var string = "foo",
        exp = /oo/;
    var result = exp.test(string);

    test返回的是一个布尔值。存在返回true,否则返回false。

    注意test函数调用者是正则表达式。

    2、match

    var string = "foo",
        exp = /oo/;
    var result = string.match(exp);
    console.log(result);

    输出结果:

    ["oo", index: 1, input: "foo"]

    调用者是字符串,如果匹配到返回一个数组,包含了匹配到的内容:正则表达式,index和input。

    3、search

    var string = "foo",
        exp = /oo/;
    var result = string.search(exp);

    返回的是搜索到的子字符串的索引,搜索不到返回-1

    【相关推荐:javascript视频教程web前端

    以上就是es6怎么判断字符串中是否有某个字符串的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:ES6 es6字符串
    上一篇:es5和es6怎么实现数组去重 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • es6中includes返回的是什么• es6 map是引用类型吗• es6箭头函数是函数式编程吗• es6的set集合怎么增加元素• es6怎么声明只读常量
    1/1

    PHP中文网