判断方法: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])
searchstring:查询的子字符串
position:可选,开始搜索的位置,默认为0
'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怎么判断字符串中是否有某个字符串的详细内容。