`

转 js 字符串 replace replaceAll

 
阅读更多

原文:http://www.cnblogs.com/shuaisam/archive/2012/04/12/2442741.html

 

  • js中字符串的替换
var str = "男的女的老的少的";
alert(str.replace('的',''));

可以看到替换后的str的值为"男女的老的少的",replace(str1,str2)方法替换的只是第一个匹配的字符串,那么如何实现替换全部匹配的字符串呢?
在java语言中有给出的replaceAll方法能够实现这样的功能,但很遗憾javascript没有提供这样的方法,但replace方法要比我们想象的强大,实际上通过它我们可以实现我们的需求的。

给出replace的语法定义

stringObj.replace(rgExp, replaceText)

其中stringObj是字符串(string),reExp可以是正则表达式对象(RegExp)也可以是字符串(string),replaceText是替代查找到的字符串。

第一个例子是参数rgExp 为字符串的情况,下面我们用正则表达式实现全部替换的功能

var str = "男的女的老的少的";
alert(str.replace(new RegExp(/(的)/g),''));

以上实现了字符串的全部替换,但这种正则表达式是有局限的,匹配的是一些特定的字符串,如何匹配动态的字符串呢?

var replaceStr = "的";
alert(str.replace(new RegExp(replaceStr,'gm'),''));

这样我们就完成了匹配字符串的动态赋值。

另外还有其他的方法实现全部替换

alert(str.split(replaceStr).join(''));

网上查到一种方法,感觉不可取

function ReplaceAll(str, sptr, sptr1){
                    while (str.indexOf(sptr) >= 0){
                       str = str.replace(sptr, sptr1);
                    }
                    return str;
             }

调用这个方法执行以下代码的话,会陷入死循环的

var ss = 'abc';
alert(ReplaceAll(ss,'b','bc'));
分享到:
评论

相关推荐

    JavaScript中使用replace结合正则实现replaceAll的效果

    这是因为在JavaScript字符串中,反斜线是转义字符,所以需要用两个反斜线来表示一个实际的反斜线。 除了直接在代码中使用replace方法以外,有时候,开发者可能会在浏览器的地址栏中直接执行JavaScript代码,以便...

    JavaScript实现的字符串replaceAll函数代码分享

    JavaScript原生的字符串replace方法可以用来替换字符串中第一次出现的匹配模式,但是它无法直接替换所有的匹配项。如果需要替换字符串中的所有匹配项,通常会用到正则表达式。 标题中提到的“字符串replaceAll函数...

    JS中实现replaceAll的方法(实例代码)

    标签为“JS replaceAll方法”,意味着我们需要专注于JavaScript语言中的字符串处理能力。 在JavaScript中,传统的replace()方法并不支持直接替换所有匹配项,而是需要使用正则表达式来实现全局替换。这就是为什么在...

    js使用正则实现ReplaceAll全部替换的方法

    在JavaScript中,字符串对象有一个replace()方法,该方法可以将指定的字符串替换为新的字符串。但replace()方法有一个限制:如果不使用正则表达式或正则表达式不包含全局匹配标志(g),那么replace()方法只会替换第...

    JavaScript使用replace函数替换字符串的方法

    在JavaScript中,字符串操作是常见的任务,其中replace()函数是实现字符串替换功能的重要工具。本文详细介绍和实例演示了如何使用JavaScript中的replace()函数来替换字符串。 首先,replace()函数是String对象的一...

    java字符串处理输入一个字符串和一个字符后,原字符串中所有该字符将被删除并显示出结果

    6. **处理字符串**:在处理方法中,获取两个文本字段的值,使用`String`类的`replace()` 或 `replaceAll()` 方法删除指定字符,然后更新结果。 7. **显示结果**:在Applet的某个地方(如`JLabel`)显示处理后的字符...

    js replace 与replaceall实例用法详解

    在JavaScript中,字符串对象有一个replace方法,该方法可以用来替换字符串中的某些特定子串。replace方法的基本用法是接受两个参数,第一个是正则表达式或者要替换的字符串,第二个是替换文本或者用于动态生成替换...

    Strman一个Javascript字符串处理库

    Strman是一个专为JavaScript设计...总的来说,Strman是一个强大且全面的JavaScript字符串处理工具,它提供了一系列实用的函数,帮助开发者更高效地处理字符串任务,无论是前端开发还是Node.js后端开发,都能从中受益。

    javascript之字符串常用的属性和方法.pdf

    JavaScript中的字符串是编程中常见且重要的数据类型,它包含了丰富的属性和方法,使得开发者能够方便地操作和处理文本。以下是一些主要的字符串属性和方法的详细解释: 1. **属性:** - `String.length`:这个属性...

    JAVA 从一个字符串中删除指定字符

    在Java编程语言中,删除字符串中的指定字符是一个常见的任务,特别是在处理用户输入或者文本数据时。这个过程涉及到字符串操作和字符遍历。本篇将详细解释如何实现这一功能,并拓展到相关的Java基础知识。 首先,...

    js替换字符串中所有指定的字符(实现代码)

    在JavaScript中,替换字符串中所有指定的字符是一项基础但非常实用的操作。通常情况下,我们会使用字符串的`replace()`方法来实现替换功能。然而,`replace()`方法默认只替换第一个匹配项。如果需要替换所有的匹配项...

    js替换字符串的所有示例代码

    标题中提到的“js替换字符串的所有示例代码”就是旨在解决这一问题。在给出的示例代码中,提供了一个名为replaceAll的函数,这个函数的目的是接收三个参数:原字符串、要被替换的字符或子串以及用来替换的新字符或...

    实例013——实现查找、替换字符串.zip

    C++中没有内置的字符串替换函数,但可以使用`std::string`类的`find()`和`substr()`结合`std::replace()`来实现。 ```cpp #include #include std::string str = "Hello, World!"; size_t pos = str.find("World...

    JavaScript常用字符串与数组扩展函数小结_.docx

    ### JavaScript常用字符串与数组扩展函数小结 #### 引言 在现代Web开发中,JavaScript是一种必不可少的语言。作为一门功能强大的脚本语言,它提供了大量的内置对象和方法来处理各种数据类型,其中最常用的就是字符...

    字符串截取相关处理!

    以上介绍了几种常用的JavaScript字符串处理方法:`split()` 用于分割字符串,`substring()` 和 `slice()` 用于截取字符串,`join()` 用于连接数组元素成字符串,`indexOf()` 用于查找子字符串的位置,以及 `...

    JS去掉字符串中所有的逗号

    JS去掉字符串中所有的逗号 在本文中,我们将详细介绍如何使用JavaScript语言去掉字符串中所有的逗号。字符串 trung 去掉逗号是非常常见的需求,例如在处理数据导入或导出时,我们需要去掉字符串中的逗号以便于数据...

Global site tag (gtag.js) - Google Analytics