字符串常用操作:查找

str.charAt(index)//返回指定位置的字符

str.charCodeAt(xx)//返回指定位置的字符的 Unicode 编码

String.fromCharCode(code)//接受指定的 Unicode 值,然后返回一个字符(串)

var str="abcde";
console.log(str.charAt(1));//b
console.log(str.charCodeAt(1));//98
String.fromCharCode(65,66,67);//ABC

str.indexOf(searchValue,fromIndex)//检索指定的字符串值在字符串中首次出现的位置。

 .searchValue 表示要查找的字符串值,

 .fromIndex 表示查找的开始位置,省略的话则从开始位置进行检索,

 .找不到,返回-1

var str = 'abcd.efg.abc.hij'
console.log(str.indexOf('.'))//4
console.log(str.indexOf('.', 1))//4
console.log(str.indexOf('.', 5)) //8
console.log(str.indexOf('.', 12)) //12
console.log(str.indexOf('fa')) //-1

str.lastIndexOf()//与indexOf相反,从后向前找,返回的指定的子字符串值最后出现的位置;

var str = 'abcd.efg.abc.hij'
console.log(str.lastIndexOf('.'))//12(abcd.efg.abc.hij)
console.log(str.lastIndexOf('.', 1))//-1(ab)
console.log(str.lastIndexOf('.', 5)) //4(abcd.)
console.log(str.lastIndexOf('.', 12)) //12(abcd.efg.abc.)

str.includes(searchString, position) //用于判断一个字符串是否被包含在另一个字符串中,返回true或false

  .searchString 将要搜寻的子字符串。

  .position 可选。搜寻的起始位置;默认为0,为负则从后数到结尾;

  .includes() 是区分大小写的。

var str = 'abcd.efg.abc.Hij'
console.log(str.includes('ab', 1))//false
console.log(str.includes('ab'))//true
console.log(str.includes('hi'))//false

str.search()//用于检索字符串中指定的子字符串/正则表达式相匹配的子字符串。返回第一个匹配的子字符串的起始位置

 .如果没有匹配的,则返回-1。

let str = 'www.jeffjade.com'
console.log(str.search('w')) // 0
console.log(str.search(/j/g)) // 4
console.log(str.search(/\./g)) // 3

str.match(regexp/string) 

.没有匹配到结果,返回null。

.参数为string,从开始位置执行一次匹配,返回一个数组,该数组的第0个元素存放的是匹配文本,返回的数组还含有两个对象属性index和input,分别表示匹配文本的起始字符索引和原字符串

.参数为具有全局匹配的正则表达式,则从开始位置进行多次匹配,返回一个数组,数组中存放所有符合要求的子字符串,并且没有index和input属性。

let str = '#1a2b3c4d5e#';
console.log(str.match('A')); //返回null
console.log(str.match(4)); //返回["4", index: 7, input: "#1a2b3c4d5e#",
console.log(str.match('#')); //返回["#", index: 0, input: "#1a2b3c4d5e#"]
console.log(str.match(/h/g)) //返回null
console.log(str.match(/\d/g)) //返回["1", "2", "3", "4", "5"]
console.log(str.match(/\d/)) //返回["1", index: 1, input: "#1a2b3c4d5e#"]

str.replace(regexp/substr,replacement) //返回经过替换后的结果字符串

 .前者为被替换的子字符串(可以是正则),后者为用来替换的文本

.正则如为全局匹配则多次替换,否则只替换一次

let str = 'www.jeffjade.com'
console.log(str.replace('w', 'W')) // Www.jeffjade.com
console.log(str.replace(/w/, 'W')) // Www.jeffjade.com
console.log(str.replace(/w/g, 'W')) // WWW.jeffjade.com

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值