在2个特定的字符出现之间替换字符串

时间:2015-08-11 15:41:21

标签: jquery

http://everyone.abc.com/systems/practices/xyz/Untitled.png

在上面的字符串中, 'http://everyone.abc.com/systems/practices/'这部分是不变的 '/ Untitled.png'部分可以是任何内容,并希望更改这两个部分之间的字符串,即'xyz'到'abc'

基本上想要在第5个和第6个字符'/'之间替换字符串。

2 个答案:

答案 0 :(得分:1)

试试这个。找到第5次出现和第6次出现的位置。将字符串剪切到第5个并连接所需的文本,然后连接扩展部分

var test = "http://everyone.abc.com/systems/practices/xyz/Untitled.png";

var fifth,sixth;
var pos = 5;
var matchText = "/";

fifth = findPos(pos,test,matchText);
pos = 6;
sixth = findPos(pos,test,matchText);

function findPos(pos,test,matchText){
 var counter = 0;
  for (var i=1; i<=test.length; i++){
    if(test.charAt(i) === matchText){
      counter++;
      if(counter == pos){
      return i;
      }

    }
  }
}

var str = test.substring(0,fifth+1)+"custoome text"+test.slice(-(test.length-sixth));
console.log(str);

演示https://jsfiddle.net/farhanbaloch/cnwa1uv3/

答案 1 :(得分:0)

这个怎么样:

var url = "http://everyone.abc.com/systems/practices/xyz/Untitled.png";
newUrl = url.replace('xyz', 'abc');
console.log(newUrl);