正则表达式在某些单词javascript

时间:2016-06-21 18:14:35

标签: javascript regex

我有一个场景,我有一个字符串" abcDuplicate1"检查字符串是否包含重复单词并使用" abcDuplicate2"更新字符串。再次检查字符串将其更新为" abcDuplicate3"等等。 我们如何使用split方法在Duplicate

之后拆分上面的字符串

1 个答案:

答案 0 :(得分:1)

遗憾的是,JS的正则表达式实现不允许0-length lookbehinds(或PCRE's \K之类的东西)。这意味着在"复制"之后,它就像分裂一样容易。匹配。相反,我们可以捕获"复制"以及后面的数字,并使用string.replace()替换它们。

var string = 'abcDuplicate1',
    regex = /(Duplicate)(\d+)/;

string = string.replace(regex, function(match, duplicate, number) {
    var newNumber = parseInt(number) + 1;
    return duplicate + newNumber;
});

console.log(string); // abcDuplicate2