在较大的字符串中,返回在特定字符串之前首次出现的时间的正则表达式可以使用以下模式:
(?:\d{2}|\d{4})-(?:0\d|1[0-2])-(?:0\d|1\d|2[0-8]|29(?=-\d{2}(?:[02468][048]|[13579][26])|(?:[02468][048]|[13579][26])-02-29))\s(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d
该正则表达式可以匹配符合常见日期时间格式的时间戳,如"2022-01-01 12:34:56"。下面是对该正则表达式的解释:
(?:\d{2}|\d{4})
:匹配年份,可以是两位或四位数字。-(?:0\d|1[0-2])
:匹配月份,可以是01到12。-(?:0\d|1\d|2[0-8]|29(?=-\d{2}(?:[02468][048]|[13579][26])|(?:[02468][048]|[13579][26])-02-29))
:匹配日期,考虑闰年的情况。\s(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d
:匹配时间,格式为"HH:MM:SS",其中小时可以是00到23,分钟和秒钟可以是00到59。使用该正则表达式可以提取出在特定字符串之前首次出现的时间。
DBTalk
腾讯云GAME-TECH游戏开发者技术沙龙
腾讯云GAME-TECH游戏开发者技术沙龙
云+社区技术沙龙[第29期]
腾讯云GAME-TECH游戏开发者技术沙龙
serverless days
Elastic 中国开发者大会
腾讯云GAME-TECH游戏开发者技术沙龙
云+社区技术沙龙[第12期]
领取专属 10元无门槛券
手把手带您无忧上云