3 回答

TA貢獻1895條經驗 獲得超7個贊
正則表達式中的加號表示“匹配一次和無限次,盡可能多次,根據需要返回”。要按原樣使用加號,您需要使用特殊的轉義符\
。
new RegExp('_New\+Delivery;', 'gi')
但在您的示例中,反斜杠由讀取字符串的代碼解釋,而不是傳遞給正則表達式解析器。您需要雙重轉義加號:
new RegExp('_New\\+Delivery;', 'gi')

TA貢獻1777條經驗 獲得超3個贊
可能不是完美的方法,但它會起作用。
const sampleInput = "XP_New+Delivery;HP_New+Delivery;LA_New;";
const result = sampleInput.split('_New+Delivery;').join(',');
console.log(result)
對于您的問題,請使用以下代碼
function myFunction() {
var str = document.getElementById("demo").innerHTML;
var res = str.split('_New+Delivery;').join(',');
document.getElementById("demo").innerHTML = res;
}
<p id="demo">XP_New+Delivery;HP_New+Delivery;LA_New;</p>
<button onclick="myFunction()">Try it</button>

TA貢獻1796條經驗 獲得超10個贊
嘗試這個:
var str = "XP_New+Delivery;HP_New+Delivery;LA_New;";
var res = str.replace(/(_New\+Delivery;)/g, ",");
console.log(res);
添加回答
舉報