字符串查询
1.indexOf
indexOf('字符',参数二):
参数一:要查询的字符;
参数二:查询的起始位置索引下标;
返回值:第一次出现该字符的索引下标,如果不存在返回值-1;
var str='qqjpofjpoajfoaofn'
var res=str.indexOf('jp')
console.log('indexof输出值: '+ res);
2.lastIndexOf
lastIndexOf('字符',参数二):
参数一:要查询的字符;
参数二:查询的起始位置索引下标;
返回值:最后一次出现该字符的索引下标,如果不存在返回值-1;
var str='qqjpofjpoajfoaofn'
var res1=str.lastIndexOf('jp')
console.log('lastindexof输出值: '+res1);
3.match
- match() 方法能够找出所有匹配的子字符串,并以数组的形式返回
- match() 方法返回的是一个数组,如果不是全局匹配,那么 match() 方法只能执行一次匹配
- 返回值
- 如果没有找到匹配字符,则返回 null,而不是空数组
- 当不执行全局匹配时,如果匹配模式包含子表达式,则返回子表达式匹配的信息
- 在全局匹配模式下,match() 将执行全局匹配。此时返回的数组元素存放的是字符串中所有匹配文本,该数组没有 index 属性和 input 属性;同时不再提供子表达式匹配的文本信息,也不提示每个匹配子串的位置。如果需要这些信息,可以使用 RegExp.exec() 方法。
var str='qqjpofjpoajfoaofn'
// 不在全局匹配
var res2=str.match(/a/)
console.log( res2);
全局匹配
var str='qqjpofjpoajfoaofn'
// 在全局匹配
var res2=str.match(/a/g)
console.log( res2);
全局查找获取组元素存放的是字符串中所有匹配文本,该数组 index 属性和 input 属性
var str = 'qqjpofjpoajfoaofn'
// 在全局匹配
let reg = /a/g
var res2 = str.match(reg);
res2.forEach(function () {
let ket = reg.exec(str);
console.log(ket);
})
4.search
- search() 方法的参数为正则表达式(RegExp 对象)。如果参数不是 RegExp 对象,则 JavaScript 会使用 RegExp() 函数把它转换为 RegExp 对象。
- search() 方法遵循从左到右的查找顺序,并返回第一个匹配的子字符串的起始下标位置值。如果没有找到,则返回 -1。
- 缺点
- search() 方法无法查找指定的范围,始终返回的第一个匹配子字符串的下标值,没有 indexOf() 方法灵活。
var str='qqjpofjpoajfoaofn'
let reg = /a/g
var res3=str.search(reg)
console.log(res3);
字符串截取
1.substr
语法:字符串.substr(参数1,参数2)
参数一:截取起始位置下标;负数为倒数第几个;
参数二:截取个数;不能为负数
返回值;截取的字符串;
2.substring
语法:字符串.substring( 参数1 , 参数2 )
参数1:截取起始位置,不能为负数;
参数2:截取结束位置索引下标,负数为从起始位置反向截取到字符串起始位置;
字符串去除空格
1.tirm
语法:字符串.trim()
去除字符串两边的空格;字符串里空格无法去除
2.去除左侧空格
字符串.trimStart();
字符串.trimLeft();
3.去除右侧空格
字符串.trimEnd();
字符串.trimRight();
字符串大小转换
1.转化为小写
语法:字符串.toLowerCase()
2.转化为大写
语法:字符串.toUpperCase()
字符串获取操作
1.charAt
语法:字符串.charAt(索引下标)
获取对应索引下标的字符
2.charCodeAt
语法:字符串.charCodeAt(索引下标)
获取对应索引下标的字符ASCLL码;
字符串替换
语法:字符串.replace(参数1,参数2)
参数1:原字符串
参数2:新字符
只会替换第一个出现的原字符;