Javascript Regex:替换第二组方括号

时间:2016-03-02 21:56:39

标签: javascript regex

我有一个看起来像这样的字符串:

"something[something][0][]"

我需要做的是用另一个号码替换[0]。这就是我的尝试:

var name = nameVar.replace(/[^\[\]]+(?=\]\[[^\]]+\]$)/, "999");

有关正则表达式的任何帮助吗?

2 个答案:

答案 0 :(得分:3)

您可以将捕获组用于第一个[...]

var re = /(\[[^\]]*\])\[[^\]]*\]/; 
var str = 'something[something][0][]';

var result = str.replace(re, '$1[999]');

RegEx Demo

答案 1 :(得分:0)

请尝试:

function myFunction() {
    var nameVar = "something[something][0][]"; 
    var name = nameVar.replace(/([^[]+\[[^\]]+\])(\[[^\]]+\])/, '$1[999]');
    alert(name);
}
myFunction()