JS删除String里某个字符的方法


Posted in Javascript onJanuary 06, 2021

方法一 正则

关于JS删除String里的字符的方法,一般使用replace()方法。但是这个方法只会删除一次,如果需要将string里的所以字符都删除就要用到正则。

var str = "abcdaabbssaaa";
var reg = new RegExp("a","g");
var a = str.replace(reg,"");
console.log(a);

这里用 new RegExp()这个方法创建正则,第一个参数“a”指定了正则表达式的模式或其他正则表达式。后一个参数是一个可选的字符串,包含属性 "g"、"i" 和 "m",分别用于指定全局匹配、区分大小写的匹配和多行匹配。ECMAScript 标准化之前,不支持 m 属性。如果 pattern 是正则表达式,而不是字符串,则必须省略该参数。

如果打印reg的结果是: /a/g 。

方法二 分隔成数组

还有一种比较取巧的方法,就是分割成数组,再重新拼接成新的字符串。

var str = "abcdaabbssaaa";
var a = str.split("a").join("");
console.log(a);

我测试了一下这两种方式的性能,选取了一个长度为133的字符串,其中要删除的字符有28个,两种方法的用时如下表:

使用正则 分割成数组
11.674ms 6.569ms
8.683ms 6.727ms
5.802ms 12.309ms
4.492ms 8.456ms
3.921ms 6.481ms
3.766ms 4.275ms
6.472ms 2.985ms
14.631ms 15.029ms
6.985ms 8.523ms
9.835ms 7.063ms

使用正则删除字符的,最慢14.631ms,最快3.766ms,平均7.6261ms

使用第二种方法,最慢15.029ms,最快2.985ms,平均7.8417ms

对比发现,还是用正则快一点吧~~而且感觉高大上~~~

下面是补充

Js删除字符串中的指定字符串

案例一、

比如:原字符串

var StringFirst = "12:30:08";

现在要删掉冒号,变成123008

就可以先split

var splitFirst = StringFirst.split(':');

这时候分割的每个元素分别是12 30 08,就没有冒号了,然后把这个数组连起来

var ResultString = splitFirst.join('');

连接的字符串是空的,啥都没有,也不是空格。
这样结果 ResultString 就成了 123008

案例二、

比如,原字符串

str = 'btn_text,other_call,start_place,estimate_price,select_contacts,payment,remark'

可以先转换为数组,然后再从数组中移除

var arr = str.split(',');
arr.splice($.inArray('要移除的字符串',arr),1);

到此这篇关于JS删除String里某个字符的方法的文章就介绍到这了,更多相关JS删除String里某个字符的方法内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
用于判断用户注册时,密码强度的JS代码
Jan 01 Javascript
js函数使用技巧之 setTimeout(function(){},0)
Feb 09 Javascript
jQuery入门问答 整理的几个常见的初学者问题
Feb 22 Javascript
JQUERY获取form表单值的代码
Jul 17 Javascript
jQuery学习笔记之Helloworld
Dec 22 Javascript
javascript实现分栏显示小技巧附图
Oct 13 Javascript
jquery实现textarea输入框限制字数的方法
Jan 15 Javascript
JS实现的不规则TAB选项卡效果代码
Sep 18 Javascript
jQuery插件扩展extend的简单实现原理
Jun 24 Javascript
Bootstrap和Java分页实例第一篇
Dec 23 Javascript
微信小程序 弹幕功能简单实例
Feb 14 Javascript
js实现一款简单踩白块小游戏(曾经很火)
Dec 02 Javascript
简单了解Javscript中兄弟ifream的方法调用
Jun 17 #Javascript
vue中typescript装饰器的使用方法超实用教程
Jun 17 #Javascript
简单学习5种处理Vue.js异常的方法
Jun 17 #Javascript
js/jQuery实现全选效果
Jun 17 #jQuery
解决微信浏览器缓存站点入口文件(IIS部署Vue项目)
Jun 17 #Javascript
通过说明与示例了解js五种设计模式
Jun 17 #Javascript
简单了解vue.js数组的常用操作
Jun 17 #Javascript
You might like
PHP实现时间比较和时间差计算的方法示例
2017/07/24 PHP
javascript中的array数组使用技巧
2010/01/31 Javascript
基本jquery的控制tabs打开的数量的代码
2010/10/17 Javascript
Fixie.js 自动填充内容的插件
2012/06/28 Javascript
php实例分享之实现显示网站运行时间
2014/05/20 Javascript
JS遍历数组及打印数组实例分析
2016/01/21 Javascript
jQuery获取字符串中出现最多的数
2016/02/22 Javascript
NodeJs下的测试框架Mocha的简单介绍
2017/02/22 NodeJs
angularjs中回车键触发某一事件的方法
2017/04/24 Javascript
Vue AST源码解析第一篇
2017/07/19 Javascript
解决axios发送post请求返回400状态码的问题
2018/08/11 Javascript
Vue中全局变量的定义和使用
2019/06/05 Javascript
[53:52]EG vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python中optionParser模块的使用方法实例教程
2014/08/29 Python
详解Python设计模式编程中观察者模式与策略模式的运用
2016/03/02 Python
深入学习python的yield和generator
2016/03/10 Python
Python正则表达式教程之一:基础篇
2017/03/02 Python
Linux RedHat下安装Python2.7开发环境
2017/05/20 Python
利用Python实现Windows下的鼠标键盘模拟的实例代码
2017/07/13 Python
使用pycharm设置控制台不换行的操作方法
2019/01/19 Python
Python request操作步骤及代码实例
2020/04/13 Python
浅谈django框架集成swagger以及自定义参数问题
2020/07/07 Python
Numpy数组的广播机制的实现
2020/11/03 Python
Python从MySQL数据库中面抽取试题,生成试卷
2021/01/14 Python
html5 Canvas实现图片旋转的示例
2018/01/15 HTML / CSS
美国最大的珠宝商之一:Littman Jewelers
2016/11/13 全球购物
武汉英思工程科技有限公司–ORACLE面试测试题目
2012/04/30 面试题
仓库门卫岗位职责
2013/12/22 职场文书
竞选班委演讲稿
2014/04/28 职场文书
村容村貌整治方案
2014/05/21 职场文书
师德模范事迹材料
2014/06/03 职场文书
开展党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
群众路线领导班子四风对照检查材料
2014/09/27 职场文书
个人批评与自我批评范文
2014/10/17 职场文书
爱国电影观后感
2015/06/19 职场文书
SQL Server基本使用和简单的CRUD操作
2021/04/05 SQL Server