匹配两个炒作之间的两位数

Match two digit numbers between two hypens

本文关键字:两位 之间 两个      更新时间:2023-09-26

我使用以下正则表达式:

(?:-)[0-9]{2}(?=-)

匹配以下字符串的月份:

2015-11-24T06:46:43.383Z

它有效。。。几乎:

-11

包括左边的炒作。如何只匹配11(两位数)?

单词边界工作:

"2015-11-24T06:46:43.383Z".match(/'b'd{2}'b/)[0]
#=> "11"

如果必须是连字符:

"2015-11-24T06:46:43.383Z".match(/-('d{2})-/)[1]
#=> "11"

不要使用RegEx,在JavaScript中使用Date()

var month = new Date('2015-11-24T06:46:43.383Z').getMonth();

请注意,月份是以零为基础的索引,因此getMonth将返回小于过去月份的月份。

如果仍然想要使用regex,请使用捕获组

'2015-11-24T06:46:43.383Z'.match(/-([0-9]{2})-/)[1];