2017-01-23 23 views
0

祝您有個美好的一天。將某物替換爲

我有一些網址

/notused/purge/page-two.php 

/notused/purge/page-three.php 

/notused/purge/page-four.php 

我想從替換 「 - 」 到 「」意味着「 - 」之後的任何內容都會出現,例如兩到三個或四個,直到「。」。

我將在我的代碼中使用該網址。

我正在使用jquery來實現此目的。

我們可以這樣做嗎?

在此先感謝。

+0

您希望最終網址像/notused/purge/page.two.php? –

+0

使用拆分並加入 –

+0

不,交配!網址無法更改。我想替換那兩個/三/四,我的意思是說,這是不是從初始URL固定。意味着「 - 」和「。」之間會出現任何內容。我清楚了嗎? – DaYdReAmeR

回答

1

您可以使用String#replace方法。

var str1 = '/notused/purge/page-two.php'; 
 
var str2 = '/notused/purge/page-three.php'; 
 
var str3 = '/notused/purge/page-four.php'; 
 

 
function update(str, rep) { 
 
    return str.replace(/-.+\./, '-' + rep + '.'); 
 
    // or return str.replace(/-[^.]+\./, '-' + rep + '.'); 
 
} 
 

 
console.log(update(str1, 'three')); 
 
console.log(update(str2, 'two')); 
 
console.log(update(str3, 'four'));

0

試試這個將用'。'代替' - '。

<script> 
    $(document).ready(function(){ 
    var str = "/notused/purge/page-two.php"; 
    var test= str.split('-').join('.'); 
    alert(test); 
    }); 
</script> 

更改後的網址將被警告。

+0

對不起,我需要一些代碼,如果我通過任何東西,例如三個將取代這個網址「/notused/purge/page-two.php」;到/notused/purge/page-three.php,如果我傳了四個,它會將網址替換爲「/notused/purge/page-four.php」。更確切地說,' - '到'。'之後的任何內容一切都將被傳遞的字符串所取代。我需要相同的網址,並在' - '之後替換爲'。'。 – DaYdReAmeR

0

請檢查下面你只需要添加你的鏈接,鏈接陣列,你會得到一個newArray與你的結果,請查看以下鏈接或代碼:

https://jsfiddle.net/fatehjagdeo/g2qzyjef/

<script> 
    var links=['/notused/purge/page-two.php','/notused/purge/page-three.php','/notused/purge/page-four.php']; 
    var newArray=[]; 

    for(var i=0;i<links.length;i++){ 
     var element=links[i].replace("-", "."); 
     newArray.push(element); 
    } 
    console.log(newArray); 

    </script> 
0

我從你的問題得到的是你想要一個方法來取代「two」 of /notused/purge/page-two.php URL。

因此,您可以使用正則表達式的替換方法。我將在下面添加一段代碼。

我正在使用jQuery實現此目的。

jQuery是一個偉大的JavaScript庫DOM遍歷和操縱和動畫,但如果你想要做一些字符串操作,然後正則表達式是你最好的朋友。

所以,正則表達式是非常方便,當你在字符串中已經到

  • 搜索
  • 匹配模式
  • 在一些替換字符串

好的,對於你的情況,這段代碼將工作,如果不讓我知道,我們可以根據你的要求創建一個新的正則表達式。

let regex = /-(.*?)\./g; 
 
let strList = [ 
 
    `/notused/purge/page-one.php`, 
 
    `/notused/purge/page-two.php`, 
 
    `/notused/purge/page-three.php` 
 
]; 
 
let replaceText = "something"; 
 
let match; 
 

 
for(var i in strList) { 
 
    newURL = replaceInURL(strList[i]); 
 
    console.log(newURL); 
 
} 
 

 
function replaceInURL(str) { 
 
    var replaceWith = 'something'; 
 
    return str.replace(regex, '-' + replaceWith + '.'); 
 
}