0

我正在尝试编写一个简单的 JavaScript 函数来删除字符串中所有出现的具有特定后缀的单词。

function removeClassBySuffix(s, suffix) {
    var regx = new RegExp(what-regex-to-put-here, 'g');
    s = s.replace(regx, '');
    return s;
}

/* new RegExp('\\b.+?' + suffix + '\\b', 'g') -- doesn't work */

所以,

removeClassBySuffix('hello title-edit-panel deal-edit-panel there', '-edit-panel');
// Should return 'hello   there'.

请帮忙?

4

2 回答 2

2

我还没有尝试过,但我认为以下应该可行:

new RegExp('\\b\\S+?' + suffix + '\\b', 'g')

于 2012-04-29T11:30:56.917 回答
0

怎么样:

function removeClassBySuffix(s, suffix) {
    var a = s.split( ' ' ),
    result = [];

    for (i in a)
        if ( a[i].indexOf( suffix ) != ( a[i].length - suffix.length ) )
            result.push( a[i] );

    return result.join(' ');
} 
于 2012-04-29T22:34:02.033 回答