0

如何制作一个正则表达式来替换除第一个单词之外的所有单词?
我有一个网页,顶部有大量文本和标题。我想制作一个正则表达式来替换所有出现的单词但第一个,因为我不希望标题更改。

4

3 回答 3

3
var count = 0;
text = text.replace(myRegex, function(match) {
    count++;
    if(count==1) {
        return match;
    }
    else {
        return myReplacedValue;
    }
});
于 2013-07-23T21:20:57.383 回答
2

你可以这样做:

var i = 0;
"foo foo foo".replace(/foo/g, function(captured/*, offset, originalString */) {
    if ( i++ ) {
        return 'bar';
    }
    return captured;
});
于 2013-07-23T21:20:18.823 回答
1

很好的答案摘要...我以前从未见过像这样使用替换

这是一个很好的混乱版本..

text = text.replace(/boo/g, function(match) {return (++count==1)?match:myReplacedValue});
于 2013-07-23T21:47:33.183 回答