JavaScript 删除或抽取字符串指定字符的所有方法,极为常用“建议收藏”

举报
前端老实人 发表于 2021/09/27 13:00:51 2021/09/27
【摘要】 以下是个人认为的以常用程度排序1.substring()方法用于提取(字符串)两个指定下标之间的字符。let a = "1,2,3";document.write(a.substring(2,a.Length))//第一个参数从下标为0的字符开始,包括当前下标0,//第二个参数到下标为几的字符结束,不包含当前下标,默认比要提取的子串的最后一个字符在字符串中的下标位置长度多+1 //从第2个...

以下是个人认为的以常用程度排序

1.substring()

方法用于提取(字符串)两个指定下标之间的字符。

let  a = "1,2,3";
document.write(a.substring(2,a.Length))
//第一个参数从下标为0的字符开始,包括当前下标0,
//第二个参数到下标为几的字符结束,不包含当前下标,默认比要提取的子串的最后一个字符在字符串中的下标位置长度多+1
 
//从第2个下标截取到总长度+1,所以结果输出为:2,3
复制代码

2.substr()

方法可在字符串中抽取从下标为几的到下标为几指定数量的字符

var str="Hello!";
var n=str.substr(2,3)
//从下标为2的字符往后抽取3个,输出结果为:llo
复制代码

3.indexOf()

方法可返回某个指定的字符串值在字符串中首次出现的位置,没有找到匹配到则返回 -1

var str="runab site";
var n=str.indexOf("a");
//只指定一个参数则从头查询,规定需检索的字符串值,查询到值返回指定下标
//第二个参数规定在字符串中开始检索的位置(包括输入的下标),查询到返回指定下标
//输出结果为:3
复制代码

4.lastIndexOf()

方法可返回一个指定的字符串值最后出现的位置,没有找到匹配字符串则返回 -1

var str="runab site";
var n=str.lastIndexOf("a",3);
//只指定一个参数则从尾部向前查询,查询到返回指定下标
//第二个参数是从下标为几的字符开始向前查询(包括输入的下标),查询到返回指定下标
//输出结果为:3
 
 
//结合上面配合使用(返回最后一个字符)
let str= str.substring(0, str.lastIndexOf('e'));
复制代码

5.replace()

方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

var str="大家好!";
var n=str.replace("大","小");
//输出结果为: 小家好!
 
 
//还可以用正则替换
var str="大家好大";
var n=str.replace(/大/g,"小");  //g是全局替换
//输出结果为:小家好小
 
//把第二个参数设为空可删除字符串
var str="大家好大";
var n=str.replace(/大/g,"");  //g是全局替换
//输出结果为:家好
 
复制代码

有时候截取完字符需要拼接,可以这样

var str="hello world!"
var items=str.split("ll")      // ["he", "oWorld!"]
//会得到一个数组,items数组中包括利用ll分割后的多个字符串(不包括ll)
var newStr=items.join("");       // heoWorld!
//join()将数组中的数组使用空串连接成一个新字符串,不加引号默认逗号分隔
复制代码

补充:

  • slice(start, end) 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。使用 start(包含) 和 end(不包含) 参数来指定字符串提取的部分,传负数就是从后截取。
  • includes() 方法用于判断字符串是否包含指定的子字符串,如果找到匹配的字符串则返回 true,否则返回 false。
  • search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。
  • match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
  • test() 方法用于检索字符串中指定的值。返回 true 或 false。
  • exec() 方法用于检索字符串中的正则表达式的匹配。返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null。


最后

如果对您有帮助,希望能给个👍评论收藏三连!

想跟博主交朋友的可以关注下🌹,有问题评论留言。

博主为人老实,无偿解答问题哦❤


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。