从字符串中删除字符

时间:2015-07-29 18:55:28

标签: javascript angularjs node.js request cheerio

所以我有这个:

$('#chapters').filter(function() {
            var volume_elms = $('.volume');
            var chapter_elms = $('.chlist');

            for (var i = 0, l = volume_elms.length; i < l; ++i) {
                var elm = $(volume_elms[i]);
                var celm = $(chapter_elms[i]);

                var volume_name = elm.first().text();
                var volume_id = elm.first().text().split('removeMe');

                var vlist = {
                    id: volume_id,
                    name: volume_name,
                    chapters: []
                };

                for (var j = 0, ll = celm.children().length; j < ll; ++j) {
                    var chapter = $(celm.children()[j]);
                    var chapter_name = chapter.first().text().split('\r\n')[4].trim();

                    vlist.chapters.push({
                        name: chapter_name
                    });
                }

                json.volumes.push(vlist);
            }
        });

        res.send(json);

我想从volume_id中删除一些字符,我知道.split('removeMe')会删除它,但它只会按顺序删除它,你只能使用它一次

那么如何删除多个字符并避免它变成一个数组(输出为json)

2 个答案:

答案 0 :(得分:1)

您可以使用正则表达式查找多个匹配项,以“|”分隔(或)

value.replace(/FilterMe|FilterMeToo/g, "");

答案 1 :(得分:0)

您可以替换多个单词,如

.filter('words', function() {
    return function (value) {
        return (!value) ? '' : value.replace('FilterMe', '').replace('FilterMeTwo', '').replace('FilterMeThree', '');
    };
  });