字符串替换---替换第X位到Y位的字符

字符串替换有三种方法:

  1. 字符串连接(简单易想易实现)

    截取其中几位,然后分别连接。

    	var str = "asdf123456";
    	
    	var sp = function(begain, end, mainStr, replaceStr){
    	    var len = mainStr.length;
    	    end = end >= len ? len : end;
    	    begain = begain > len || begain < 0 ? 0 : begain;
    	
    	    var bStr = mainStr.substr(0, begain);
    	    var eStr = mainStr.substr(end, len);
    	    return bStr + replaceStr + eStr;
    	}
    	
    	console.log(sp(6, 10, str, "1234")); //asdf121234
    
  2. 字符串变数组然后变字符串(稍难不太易想,但是全用内置函数不用自己实现)

    把字符串split替换成数组,然后用slice替换,然后join返回字符串

    var str = "asdf123456";
    var arr = str.split('');
    var replaceArr = arr.splice(6,10, '1234');
    var res = arr.join('');
    console.log(res);
    
  3. 正则 (难但是代码最少)

    var str = "asdf123456";
    var res = str.replace(/(\w{6})(\w{4})(.*)/, '$11234$3');
    console.log(res);
    

总结:对正则不熟悉的,建议第二条。想练习正则的,可以看一下我的笔记:传送门

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值