2013-04-02 86 views
0

我有發現類名FC-ID ##可能是前一個功能:FC-ID3或FC-ID14類名稱正確

我把它變成FC-天##。問題是,它像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'); 
}); 

我怎樣才能得到它解析整個多少?

+1

,使用'/ FC-ID (\ d +)/'或'/ fc-id(\ d *)/',首先檢查一個或多個數字,而第二個檢查數字爲0或更多。決定使用哪一個 – vdua

+0

'var num = this.className.split('')[0] .replace('fc-id','');'你真的需要一個正則表達式嗎? – adeneo

回答

2

這是給你正是你要求的。 \d匹配一個數字。如果你想匹配多個數字,你需要使用一個量詞像*(零個或多個)或+(一個或多個):您使用了錯誤的正則表達式

/fc-id(\d+)/ 
2

匹配多於一個號碼(\d):

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

\d比賽爲恰好有一個數字,\d+匹配一個或多個數字。