javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > JavaScript replaceAll函数

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

投稿:junjie

这篇文章主要介绍了JavaScript实现的字符串replaceAll函数代码分享,本文直接给出实现代码,需要的朋友可以参考下

我们在Java中可以使用replaceAll()方法对字符串进行批量替换,但在JS中replaceAll()方法是undefined,JS中只存在replace()方法,因此我们可以自己封装JS中replaceAll()方法供我们便捷使用。

一、使用replace()方法进行替换

定义一个字符串:

var str = "hello world";

使用replace()方法将字符串中的字母"l"替换成"i",原始做法:

 console.log(str.replace("l","i"));

输出:

“heilo world”

需要执行三次,非常不方便;

二、使用replaceAll()方法替换

封装replaceAll()方法:

String.prototype.replaceAll = function(s1, s2) {
    return this.replace(new RegExp(s1, "gm"), s2);
}

定义一个字符串:

var str = "hello world";

使用replaceAll()方法进行批量替换:

console.log(str.replaceAll("l", "i"));

输出:

“heiio worid”

只需要执行一次,就完成了全部替换需求。

由于javascript中的replace函数无法替换全部匹配的字符串,所以需要为String类增加一个方法,代码如下:

String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) {  
    if (!RegExp.prototype.isPrototypeOf(reallyDo)) {  
        return this.replace(new RegExp(reallyDo, (ignoreCase ? "gi": "g")), replaceWith);  
     } else {  
        return this.replace(reallyDo, replaceWith);  
     }  
}

到此这篇关于JavaScript实现的字符串replaceAll函数代码分享的文章就介绍到这了,更多相关JavaScript replaceAll函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文