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

方法一 正则

关于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

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

(0)

相关推荐

  • JS实现数组删除指定元素功能示例

    本文实例讲述了JS实现数组删除指定元素功能.分享给大家供大家参考,具体如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>www.jb51.net JS数组删除指定元素</title> </head> <body> <script> var array = [&qu

  • JavaScript中使用Substring删除字符串最后一个字符

    String str = "a,b,c,"; 我们需要删除最后的英文逗点,该怎么办呢? 方法: 1.Substring str=str.Substring(0,s.Length-1)

  • JavaScript怎样在删除前添加确认弹出框?

    一,[前言]      最近架构组开发的"异常监控平台",虽说是公司内部基础研发部业务组上百人用的一个系统,但是对一下体验度的提升还是要的,例如,删除是直接删除还是删除之前有一个确认弹出框比较好呢? 答案当然是有确认提示框好,这样可以避免误删. 二,[详情] 1,思考方法: 可以添加 js, 或添加一个 function 用一个Ajax. 2,现在情况: 原代码删除是 HTML表单形式,调接口的方式;  网上查了一般都是 onclick方式,这怎么办? 3,本次解决方案: (1)  更

  • javascript数组常见操作方法实例总结【连接、添加、删除、去重、排序等】

    本文实例讲述了javascript数组常见操作方法.分享给大家供大家参考,具体如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>www.jb51.net 数组的方法</title> <script> var arr=[1,3,4] var arr1=["a",&quo

  • 原生JS实现动态添加新元素、删除元素方法

    1. 添加新元素 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>动态添加新元素</title> </head> <body> <ul class="example"> <li class="child">Coffee</li> <li c

  • PHP 结合 Boostrap 结合 js 实现学生列表删除编辑及搜索功能

    这个自己的小项目要先告一段落了.可能还有许多bug.请见谅 删除学生功能 PHP: // 这里是通过前端代码HTML中的 url 传过来的,用 $_GET 来获取(相关HTML代码可以看一下到主页看一下前几条博客) if (empty($_GET['num'])) exit('<h1>找不到您要删除的学生的学号</h1>'); $num = $_GET['num']; $connection = mysqli_connect('localhost', 'root', '密码', '

  • 初学node.js-nodejs中实现删除用户路由

    一.users_model.js 功能:定义用户对象模型 var mongoose=require('mongoose'), Schema=mongoose.Schema; var UserSchema=new Schema({ username:{type:String,unique:true}, email:String, color:String, hashed_password:String }); mongoose.model('User',UserSchema); 二.users_c

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

    方法一 正则 关于JS删除String里的字符的方法,一般使用replace()方法.但是这个方法只会删除一次,如果需要将string里的所以字符都删除就要用到正则. var str = "abcdaabbssaaa"; var reg = new RegExp("a","g"); var a = str.replace(reg,""); console.log(a); 这里用 new RegExp()这个方法创建正则,第一个

  • JS删除数组里的某个元素方法

    删除数组指定的某个元素 首先可以给JS的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引,代码为: Array.prototype.indexOf = function(val) { for (var i = 0; i < this.length; i++) { if (this[i] == val) return i; } return -1; }; 然后使用通过得到这个元素的索引,使用js数组自己固有的函数去删除这个元素: 代码为: Array.prototype.remove

  • C#删除字符串中重复字符的方法

    本文实例讲述了C#删除字符串中重复字符的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: #region 删除重复字符  string s = "sdfffffsrlkjesgljfdg03940864e5=_0R9DTGR98YUI\\|||'\\???fdf///";  Response.Write("<br/>String:" + s + "<br/>Result:");  IEnumerable

  • Java字符串技巧之删除标点或最后字符的方法

    删除字符串的所有标点 str = str.replaceAll("[\\pP''""]", ""); 在这里利用的是Unicode编码,Unicode 编码并不只是为某个字符简单定义了一个编码,而且还将其进行了归类. \pP 其中的小写 p 是 property 的意思,表示 Unicode 属性,用于 Unicode 正表达式的前缀. 大写 P 表示 Unicode 字符集七个字符属性之一:标点字符. 其他六个是 L:字母: M:标记符号(一般

  • JS删除字符串中重复字符方法

    复制代码 代码如下: <!DOCTYPE html> <html> <head> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"> </script> <script> $(document).ready(function(){ $("button").click(function(){ var s

  • JS 删除字符串最后一个字符的实现代码

    字符串:string s = "1,2,3,4,5," 目标:删除最后一个 "," 方法: 用的最多的是substring,这个也是我一直用的 s=s.substring(0,s.length-1) 最近老遇上这种事,如有一个字符串"[lightinthebox]",但是我只是需要lightinthebox,就是不要"[]".怎么用又快又有效的办法去掉呢. stringObject.substring(start,stop)

  • JS调用CS里的带参方法实例

    CS里 复制代码 代码如下: public string test()   {      return "Hello World";   } aspx 页面 复制代码 代码如下: <html xmlns="http://www.w3.org/1999/xhtml">  <head runat="server">      <title>无标题页</title>      <mce:script

  • python删除字符串中指定字符的方法

    最近开始学机器学习,学习分析垃圾邮件,其中有一部分是要求去除一段字符中的标点符号,查了一下,网上的大多很复杂例如这样 import re temp = "司法局让我和户 1 5. 8 0. !!?? 客户维护户外" temp = temp.decode("utf8") string = re.sub("[\s+\.\!\/_,$%^*(+\"\']+|[+--!,.?.~@#¥%--&*()]+".decode("ut

  • jquery 删除字符串最后一个字符的方法解析

    字符串:var s = "1,2,3,4,5," 目标:删除最后一个 "," 方法:s=s.substring(0,s.Length-1): 字符串:var s2 = "img/upload/123.jpg" 目标:获取文件名(不包含后缀名) 方法:s2=s2.substring(s2.lastIndexOf('/')+1, s2.lastIndexOf('.'));

  • js删除数组中的元素delete和splice的区别详解

    例如有一个数组是 :var textArr = ['a','b','c','d']; 这时我想删除这个数组中的b元素: 方法一:delete 删除数组 delete textArr[1]  结果为: ["a",undefined,"c","d"] 只是被删除的元素变成了 undefined 其他的元素的键值还是不变. 方法二:aplice 删除数组 splice(index,len,[item]) 注释:该方法会改变原始数组. index:数组开

随机推荐