[英]Replace some string in javascript
var x="45ab6eb6f099e866a97a10famount%5D=7.00";
我需要替換amount%5D=
之后的值。 即我需要使...amount%5D=56.00
等。
最主要的是, amount%5D
之前和之后的字符串總是在變化。
即可能是
sdd45ab6eb6f099e866a97a10famount%5D=4.00
gdfgdtgtrrtamount%5D=3.00
有一些方法可以做到這一點:
1:正則表達式:
x.replace(/(.+%5D=).+/, '$1' + yourNewValue);
2:字符串拆分:
var parts = x.split('%5D=');
var newString = parts[0] + '%5D=' + yourNewValue;
一個簡單的解決方案是使用replace(regExp, 'replacement')
。 這是一個快速示例,說明如何使用匹配模式/amount%5D=[0-9]+.[0-9]+/
的正則表達式對x和x1執行此/amount%5D=[0-9]+.[0-9]+/
。
// test with first variable
var x="45ab6eb6f099e866a97a10famount%5D=7.00";
var y = x.replace(/amount%5D=[0-9]+.[0-9]+/, "amount%5D=235.00");
console.log(y)
var y = x.replace(/amount%5D=[0-9]+.[0-9]+/, "amount%5D=12.00");
console.log(y)
var y = x.replace(/amount%5D=[0-9]+.[0-9]+/, "amount%5D=11.00");
console.log(y)
// test with new variable
var x1="dsf45ab6eb6f099e866a97amount%5D=7.00";
var y = x1.replace(/amount%5D=[0-9]+.[0-9]+/, "amount%5D=235.00");
console.log(y)
var y = x1.replace(/amount%5D=[0-9]+.[0-9]+/, "amount%5D=12.00");
console.log(y)
var y = x1.replace(/amount%5D=[0-9]+.[0-9]+/, "amount%5D=11.00");
console.log(y)
輸出量
45ab6eb6f099e866a97a10famount%5D=235.00
45ab6eb6f099e866a97a10famount%5D=12.00
45ab6eb6f099e866a97a10famount%5D=11.00
dsf45ab6eb6f099e866a97amount%5D=235.00
dsf45ab6eb6f099e866a97amount%5D=12.00
dsf45ab6eb6f099e866a97amount%5D=11.00
您可能對正則表達式有更多限制(例如,僅允許使用2個小數位)。 此表達僅用於說明目的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.