增加字符串中间的数字

时间:2012-05-28 14:57:13

标签: jquery regex attr

我有一系列字符串add[0][types]add[0][name]等(用PHP形成$ _POST的数组)。

我需要提取[0]并将其设为[1]

我已根据其他一些回复构建了一个正则表达式函数,但它没有更改属性,我不确定我的函数语法是否正确:

newrow.find('input, select').each(function(){
  $(this).attr('name', function(i, val){return val.replace(
    /\\d+/, function(n){ return ++n; });
  });
});

1 个答案:

答案 0 :(得分:6)

我认为你的正则表达略有偏差。您可以通过移除.each以支持带有函数的attr的重载来缩短您的代码(您已经使用的函数略有不同):

newrow.find('input, select').attr('name', function(i, val) {
    return val.replace(/\d+/, function(n) {
        return ++n;
    });
});

示例: http://jsfiddle.net/hDELW/1/