oracle 数据库正则匹配满足时间格式的并提取出时间

SELECT substr(nr,(REGEXP_instr(nr,'\d{4}-(0[1-9]|1[0-2])-(0[1-9]|(1|2)[0-9]|3(0|1))')),19),a.* FROM xxx a  
WHERE   REGEXP_LIKE(nr,'\d{4}-(0[1-9]|1[0-2])-(0[1-9]|(1|2)[0-9]|3(0|1))')
 1.REGEXP_LIKE(nr,'\d{4}-(0[1-9]|1[0-2])-(0[1-9]|(1|2)[0-9]|3(0|1))')  匹配格式:2022-04-12 15:23:11满足这样格式的数据

 2.REGEXP_instr(nr,'\d{4}-(0[1-9]|1[0-2])-(0[1-9]|(1|2)[0-9]|3(0|1))'),返回时间字符的位置

3.substr(nr,(REGEXP_instr(nr,'\d{4}-(0[1-9]|1[0-2])-(0[1-9]|(1|2)[0-9]|3(0|1))')),19) 截取获取到时间

posted @   醉舞红尘  阅读(451)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 提示词工程——AI应用必不可少的技术
· 地球OL攻略 —— 某应届生求职总结
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界
点击右上角即可分享
微信分享提示