我需要更改文本中特定子字符串的颜色。
文本如下所示:

SOME TE<br>
XT IS HER<br>
E.

我厌倦了jquery的.replace()函数,它的问题是,如您在上面看到的,文本被那些<br>分割了。我如何“忽略”它们?
例如我想用TEXT替换字符串<span class="color-red">TEXT</span>
有谁知道如何解决这个问题?

最佳答案

无需jQuery。尽管我根本没有测试过,所以可能需要进行调整。

var customReplace = function(str, subStr, color) {
    var words = str.split(' ');
    for (var i = words.length - 1; i >= 0; i--) {
        var word = words[i].replace(/<br>/g, '');
        if (word === subStr) {
            words[i] = '<span class="color-' + color + '">' + words[i] + '</span>';
        }
    }

    return words.join('');
}

09-16 16:35