簡體   English   中英

使用Regex Javascript替換部分URL

[英]Replace part of URL using Regex Javascript

我正在嘗試用javascript中的另一個字符串替換url的一部分,例如,我有以下內容:

res/icons/android/quickshop/icon-36-ldpi.png
res/icons/android/quickshop/icon-48-mdpi.png
res/icons/ios/quickshop/icon-72-hdpi.png
res/icons/ios/quickshop/icon-96-xhdpi.png

並且我想將其替換為以下內容(quickshop是動態的,可以是任何一系列字符,主要是[az] [AZ])

res/icons/android/homecenter/icon-36-ldpi.png
res/icons/android/homecenter/icon-48-mdpi.png
res/icons/ios/homecenter/icon-72-hdpi.png
res/icons/ios/homecenter/icon-96-xhdpi.png

對於正則表達式,我總是很爛,有人可以幫忙嗎?

嘗試這個:

/(([\w]+\/){3})([^\/]+)(\/.+)/gm

Regex101演示


var re = /(([\w]+\/){3})([^\/]+)(\/.+)/gm; 
var str = 'res/icons/android/quickshop/icon-36-ldpi.png';
var replaceWord = 'homecenter'
var subst = '$1' + replaceWord + '$4';

var result = str.replace(re, subst);
// show result
window.alert(result);

甚至可以寫成一個函數:

 function replaceURL(url, strReplace){ let re = /(([\\w]+\\/){3})([^\\/]+)(\\/.+)/gm; var subst = '$1' + strReplace + '$4'; return url.replace(re, subst); } var originalURL = 'res/icons/android/quickshop/icon-36-ldpi.png'; var replaceWord = 'homepage'; var newURL = replaceURL(originalURL, replaceWord); document.write(newURL); 

嘗試這個:

 var str = "res/icons/android/quickshop/icon-36-ldpi.png\\nres/icons/android/quickshop/icon-48-mdpi.png\\nres/icons/ios/quickshop/icon-72-hdpi.png\\nres/icons/ios/quickshop/icon-96-xhdpi.png", result = str.replace(/([\\w.-]+)(\\/[\\w.-]+)$/gm,"homecenter$2"); console.log(result); alert(result); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM