0

我有一个函数可以找到类名 fc-id##,它可能是 ex: fc-id3 或 fc-id14

我把它变成了fc-day##。问题是 fc-id14 变成 fc-day1 之类的东西......似乎只解析了第一个数字......

$(mondays).each(function () {
    var num = this.className.split(' ')[0].match(/fc-id(\d)/)[1];
    var clsnme = '.fc-day' + num;

    $(this).addClass('monday');
    $(clsnme).addClass('monday');
});

我怎样才能让它解析整个数字?

4

2 回答 2

2

匹配多个数字 ( \d):

var num = this.className.split(' ')[0].match(/fc-id(\d+)/)[1];

\d只匹配一位数字,\d+匹配一位或多位数字。

于 2013-04-02T16:39:00.373 回答
2

它给你的正是你所要求的。\d匹配单个数字。如果要匹配多个数字,则需要使用*(零或多个)或+(一个或多个)之类的量词:

/fc-id(\d+)/
于 2013-04-02T16:39:07.437 回答