整理js中可以用到的判断一个字符串中是否包含另外一个字符的方法

String对象方法

1、indexOf

indexOf 返回指定字符串在该字符中首次出现的位置,如果没有找到,则返回 -1
indexOf 接收两个参数,第一是需要搜索的字符串,第二个参数是检索的位置,默认为0

let str = 'abcde';
//例如,从str第三位开始搜索 'a'
console.log(str.indexOf('a',2));// -1
console.log(str.indexOf('a'))// 0

2、lastIndexOf

lastIndexOf是从字符串末尾开始搜索,返回指定字符串在该字符中最后一次出现的位置
lastIndexOf 接收两个参数,第一个是需要搜索的字符串,第二个参数是检索的位置,默认是 sting.length - 1

let str = 'abcdea';
//例如,从str第三位向前开始搜索 'a'
console.log(str.lastIndexOf('a',2));// 0
console.log(str.lastIndexOf('a'));// 5

3、includes

includes() 方法用于判断字符串是否包含指定的子字符串,返回 true 或 false
includes 接收两个参数 第一个参数为指定字符串, 第二个参数为查找位置,默认为0

let str = 'abcde';

console.log(str.includes('a'))//true
console.log(str.includes('a',1))//false

4、match

match方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配,如果未找到,则返回 null(也可以用来查询字符串中某个字符出现的次数)
g:全局搜索
i:忽略大小写

let str = 'abcdabcda';

console.log(str.match(/a/gi));//['a','a','a']
console.log(str.match(/z/gi));// null
5、 search

seacrh方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,如果没有则返回 -1

let str = 'abcde';

console.log(str.search('a'));// 0

console.log(str.search(/A/i));//使用正则匹配忽略大小写检索   返回 0

正则表达式 RegExp 对象

1、test方法

检索字符串中指定的值。返回 true 或 false。

let str = 'abcdef';

let reg = /A/i;
console.log(reg.test(str));// true

2、exec方法

检索字符串中指定的值。返回找到的值,并确定其位置。
如果字符串中有匹配的值返回该匹配值,否则返回 null。

let str = 'abcdef';

console.log(/a/.exec(str))// 返回匹配对象
console.log(/z/.exec(str))// null

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐