美文网首页Web前端之路让前端飞程序员
JavaScript 替换字符串中的指定子字符串

JavaScript 替换字符串中的指定子字符串

作者: DreamOver | 来源:发表于2017-06-09 14:29 被阅读35次
  • 替换第一个
var replaceAll = function(s, old_str, new_str) {
    var str = s;
    var index = s.indexOf(old_str);
    if (index > 0) {
        var head = s.slice(0, index);
        var tail = s.slice(index + old_str.length);
        str = head + new_str + tail;
    }
    console.log(str);
    return str;
}

// 测试函数
replaceAll("abcdgbcjh0", "bc", "_");  // a_dgbcjh0

这段代码相当于用原生 JavaScript 实现"abcdgbcjh0".replace("bc", "_")

  • 替换最后一个
// 查找子字符串在母字符串中的所有位置
var findIndex = function(s1, s2) {
    var len = s2.length;
    var arr = new Array();
    for (var i = 0; i < s1.length; i++) {
        var s = s1.slice(i, i + len);
        if (s === s2) {
            arr.push(i);
        }
    }
    return arr;
}

var replaceLast = function(s, old_str, new_str) {
    var oldList = findIndex(s, old_str);
    var str = s;
    if (oldList.length > 0) {
        var index = oldList[oldList.length - 1];
        var head = str.slice(0, index);
        var tail = str.slice(index + old_str.length);
        str = head + new_str + tail;
    }
    console.log(str);
    return str;
}

replaceLast("abcdgbcjh0", "bc", "_");  // abcdg_jh0
  • 替换所有
var replaceAll = function(s, old_str, new_str) {
    var all_old = new RegExp(old_str, "g");
    var str = s.replace(all_old, new_str);
    console.log(str);
    return str;
}

// 测试函数
replaceAll("abcdgbcjhbc0", "bc", "_");   // a_dg_jh_0
replaceAll(" ", "bc", "_");  // 返回一个空格

相关文章

  • JavaScript 替换字符串中的指定子字符串

    替换第一个 这段代码相当于用原生 JavaScript 实现"abcdgbcjh0".replace("bc", ...

  • JavaScript中的字符串

    @(javascript)[js字符串][toc] JavaScript中的字符串 字符串是JavaScript中...

  • Android中string.xml应用

    配置字符串替换 单个字符串替换 使用Context方法,动态替换 多个个字符串替换 配置字符串中的空格

  • js实现字符串算法

    字符串算法 替换空格 剑指offer:请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为W...

  • x86基础实验-字符串替换

    简介 读取一个字符串,将指定子串替换为另一个字符串并输出 程序运行结果 代码

  • 学习JavaScript的String类型replace()方法

    JavaScript字符串的replace()方法介绍 为了简化替换子字符串的操作,ECMAScript提供了re...

  • JavaScript 字符串常用方法介绍

    获取字符串信息 是否是字符串 string.indeOf - 查询字符串中是否包含指定子字符串。若存在,则返回子字...

  • JS实现字符串反转

    首先了解JavaScript中字符串和数组的区别: ①字符串是不可变的,数组是可变的。字符串不可变是指字符串的成员...

  • NSString

    替换字符串中的内容 取掉字符串的空格 字符串输出

  • sed中转义字符的替换

    sed中转义字符的替换 背景 在使用sed的时候,经常我们会用来替换字符串,如果被替换的字符串中包含转移字符串怎么...

网友评论

    本文标题:JavaScript 替换字符串中的指定子字符串

    本文链接:https://www.haomeiwen.com/subject/gfffqxtx.html