[英]Replace character in a string using RegEx JS
我有許多輸入名稱,最后一位數字發生了變化:
<input name="ProductsLang[1][text][0]">
<input name="ProductsLang[1][text][1]">
<input name="ProductsLang[1][text][2]">
我正在動態添加新輸入,我需要相應地重新計算所有索引,因為我可能會在兩者之間添加一個。 所以我有一個帶有正則表達式的小函數來替換它們:
$('input').each(function(i) {
var matches = $(this).attr('name').match(/ProductsLang\[\d+\]\[[^\]]+\]\[(\d+)\]/);
var newName = $(this).attr('name').replace(matches[1], i);
$(this).attr('name', newName);
});
它的工作很奇怪......而不是改變最后一位我可以得到這樣的結果:
<input name="ProductsLang[1][text][0]">
<input name="ProductsLang[1][text][1]">
<input name="ProductsLang[2][text][1]">
<input name="ProductsLang[1][text][3]">
為什么替換會這樣? 幫我弄清楚。 我需要的只是增加最后一位數字。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.