JavaScript中判断字符串中是否包含子串的几种方法

使用String对象的方法

indexOf()   (推荐)

var str = "yitian";
console.log(str.indexOf("yi") !== -1 );  // true

String对象的indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。如果要检索的字符串值没有出现,则该方法返回 -1。

search() 

var str = "yitian;
console.log(str.search("tian") !== -1 );  // true

String对象的search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。如果没有找到任何匹配的子串,则返回 -1。

match()

var str = "yitian";
var reg = RegExp(/a/);
if(str.match(reg)){
    // do something        
}

String的match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配结果。

RegExp 对象方法

test() 

var str = "yitian";
var reg = RegExp(/a/);
console.log(reg.test(str)); // true

使用RegExp对象的test() 方法用于检索字符串中指定的值,根据是否满足匹配结果返回 true 或 false。

exec()

var str = "yitian";
var reg = RegExp(/a/);
if(reg.exec(str)){
    // do something        
}

RegExp对象的exec() 方法用于检索字符串中的正则表达式的匹配。返回一个数组,其中存放匹配的结果,如果未找到匹配,则返回值为 null。

发布了322 篇原创文章 · 获赞 64 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/yitian_z/article/details/104592526