您好,我试图仅获取时间组,例如(这3个字符串):
'6 hrs'
'16 mins'
'5 hrs 30 mins'
来自文字
6 hrs blah blah 16 mins blah
blah 5 hrs 30 mins xyz
我尝试过此方法/(\d+ hrs)?( \d+ mins)?/gm
,但获得了32个匹配项。请参阅此https://regex101.com/r/xmoMKz/4
如何只获得我想要的组?没有其他比赛-我什至不知道其他比赛是什么?
如果您使用摆脱了捕获组?:
,那么您应该能够得到想要的。而且,与其让两个子组都不是可选的,不如使第一个子组不可选,而只需检查hrs
或mins
。因此,请尝试:
(?:\d+ (?:hrs|mins))(?: \d+ mins)?
Regex101:https://regex101.com/r/nQbrb0/1
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句