正则表达式匹配Jquery中的2位数字

时间:2014-02-28 03:48:47

标签: jquery regex

multiplier_h = $item.attr('class').match(/item-h(\d)/)

它正确地匹配item-h3类但如果它是item-h12那么它只匹配item-h1

所以在上面的代码中应该更改以匹配第二个数字。

感谢。

2 个答案:

答案 0 :(得分:1)

这样的模式将匹配一位或两位数

/item-w(\d\d?)/

这样的模式会匹配一个或多个数字的数字:

/item-w(\d+)/

但一般情况下,您可以使用{n,m}匹配 n m 的任意位数。例如,要匹配1到5位的任何位置:

/item-w(\d{1,5})/

答案 1 :(得分:0)

一些事情:

  1. 因为你可以拥有多个课程,我建议你选择匹配相邻的空格并填充主题,
  2. 为了使其更通用,您可以匹配尽可能多的数字,以便它也匹配item-h100
  3. 所以:

    var str = ' ' + $item.attr('class') + ' '; // pad with spaces
    
    multiplier_h = str.match(/\sitem-h(\d+)\s/);