使用javascript删除里面的所有括号和内容

时间:2013-03-07 21:00:04

标签: jquery regex

我在我的网站上解析XML Feed,其中一个Feed以下列格式显示:新闻故事标题(2013年1月15日)。我想删除括号内的所有内容。

我将整个字符串存储在一个变量中:var title = $(this).text();

然后我使用jquery来遍历每个RSS标题,如下所示:

$('h4 a').each(function() {

      var title = $(this).text();

});

然后我可以使用正则表达式来获取括号内的内容并像这样提醒它:

var title = $(this).text();
var regex = new RegExp('\\((.*?)\\)', 'g');
var match, matches = [];
while(match = regex.exec(title))
    matches.push(match[1]);
alert(matches);

这很好,但是如何从字符串中删除这些?

2 个答案:

答案 0 :(得分:1)

您可以将此作为基础使用,并根据日期需要优化正则表达式。

$('h4 a').each(function() {
    var new_text = $(this).text().replace(/((\s*)\((.*)\))/, "");
    $(this).text(new_text);
});

答案 1 :(得分:0)

如果您确信标题将遵循相同的模式,则无需使用正则表达式来实现此目的:

function removeDate(title) {
    var index = title.lastIndexOf('(');
    return title.substr(0, index).trim();
}

$('h4 a').each(function() {
    $(this).text(removeDate($(this).text());
});