用于多维输入字符串名称的正则表达式,以获取方括号之间的最后一个数字

Regex for multidimensional input string name to get the the last number between quare brackets

有人可以帮助我处理正则表达式吗?

我想始终匹配每个字符串的最后一个整数方括号。

product[attribute][1][0][value] - In this case [0]
product[attribute][9871][56][value] - In this case [56]

Click here for My work:

/\[[0-9,-]+\]/g

目标是增加克隆上的输入名称,product[attribute][{attribute_id}][{clone_index}][value]

您可以使用

var s = "product[attribute][1][0][value]";
console.log(s.replace(
            /(.*\[)(\d+)(?=])/, function([=10=], , ) { 
               return  + (Number()+1);
            })
)

正则表达式匹配

  • (.*\[) - 第 1 组:除换行字符外的任何 0+ 个字符尽可能多,然后 [
  • (\d+) - 第 2 组:一个或多个数字
  • (?=]) - ] 字符必须立即出现在当前位置的右侧。

递增在回调方法中完成。