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 に答える