全网最详细,从一堆字符串,精确抓取想要日期时间的实战2.0
前言:
前面我们知道了,怎么从一堆带有中文、英文、日期时间的字符串里面抓取需要的日期时间,但是我们实现的只是抓取第一个日期时间,那我们怎么实现,抓取第二个,或者任一一个日期时间呢?

一、思路分析
1、数据清洗、匹配
因为字段里面的内容比较杂,因此我们需要从杂乱的数据里面找到我们需要的数据,即日期时间如2024-06-10 10:39 2024-06-10 10:59 这种。具体怎么匹配就不再阐述,可以参考以前的文章。
全网最详细,从一堆字符串,精确抓取日期时间的实战_日期字符串截取时间-CSDN博客
因此,这是我们还是需要通过REGEXP_SUBSTR来匹配,正则表达式在这里介绍两种方法,即regexp_substr( your_column,'\d{4}-\d{2}-\d{2} \d{2}:\d{2}')或者REGEXP_SUBSTR(your_column,'([0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2})',一个是匹配按日期规则匹配的正整数,一个是按日期规则匹配的0-9的整数,效果都是一样的。
2、实战
代码:
SELECT field0044 ddate,
regexp_substr(field0044,'\d{4}-\d{2}-\d{2} \d{2}:\d{2}') second_datetime,
regexp_substr(field0044,'([0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2})') second_datetime_V2
FROM BI.oa_cpbhg a
WHERE field0044 is not null and rownum=1 --只是案例,按实际需求更改
效果:

二、获取任一位置日期时间
从上面我们知道怎么去快速获取字符串中,匹配到的第一个日期时间,如果我们要获取任一个该怎么弄呢?
接下来我们可以参考,获取第二个日期时间的案例,来理解实现过程。
1、代码:
SELECT field0044,REGEXP_SUBSTR(field0044,'([0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2})',1,2, NULL,1 ) AS second_datetime
FROM BI.oa_cpbhg
WHERE field0044 is not null --只是案例,具体按实际情况更改,获取第二个日期时间,按需求可以把2改成任一需要的数字如 2 3 4 5..n
2、 效果:

3、解析:
这里的REGEXP_SUBSTR函数:
- 第一个参数是你要搜索的列名(
your_column)。 - 第二个参数是正则表达式,匹配日期时间格式(例如
'YYYY-MM-DD HH24:MI:SS')。 - 第三个参数是搜索的起始位置(这里从1开始)。
- 第四个参数指定返回第几个匹配项(这里为2,即第二个匹配项)。
- 第五个参数是匹配项的子串编号(对于
REGEXP_SUBSTR来说,这个参数通常用于捕获组,但在这里我们不需要,所以设置为NULL)。 - 第六个参数是标志,用于控制函数的行为(这里我们不需要特别的行为,所以设置为1)。
注意,如果我们的日期格式是2024-08-15 09:23:23,相应的正式表达式要更改成\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2} 或者([0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2})。希望对你有用,有问题欢迎留言讨论~ 。
相关文章:
全网最详细,从一堆字符串,精确抓取想要日期时间的实战2.0
前言: 前面我们知道了,怎么从一堆带有中文、英文、日期时间的字符串里面抓取需要的日期时间,但是我们实现的只是抓取第一个日期时间,那我们怎么实现,抓取第二个,或者任一一个日期时间呢? 一、思路分析 1、数…...
24/8/15算法笔记 dp策略迭代 价值迭代
策略迭代: 策略迭代从某个策略开始,计算该策略下的状态价值函数。它交替进行两个步骤:策略评估(Policy Evaluation)和策略改进(Policy Improvement)。在策略评估阶段,计算给定策略下…...
【MMdetection改进】换遍MMDET主干网络之SwinTransformer-Tiny(基于MMdetection)
OpenMMLab 2.0 体系中 MMYOLO、MMDetection、MMClassification、MMSelfsup 中的模型注册表都继承自 MMEngine 中的根注册表,允许这些 OpenMMLab 开源库直接使用彼此已经实现的模块。 因此用户可以在MMYOLO 中使用来自 MMDetection、MMClassification、MMSelfsup 的主…...
FL Studio21.2.4最新中文版免费下载汉化包破解补丁
🎉 FL Studio 21中文版新功能全解析!让你的音乐制作更加高效! 嘿,各位音乐制作的小伙伴儿们,今天我要安利一款你们绝对会爱上的神器——FL Studio 21中文版!这款软件不仅功能强大,而且操作简便…...
私域场景中的数字化营销秘诀
在当今的商业世界,私域场景的营销变得愈发重要。今天咱们就来深入探讨一下私域场景中的几个关键营销手段。 一、会员管理与营销 企业一旦拥有完善的会员体系,数字化手段就能大放异彩。它可以助力企业对会员进行精细划分,深度了解会员的消费…...
一键换肤(Echarts 自定义主题)
一键换肤(Echarts 自定义主题) 一、使用官方主题配置工具 官方主题配置工具:https://echarts.apache.org/zh/theme-builder.html 如果以上主题不满足使用,可以自己自定义主题 例如:修改背景、标题等,可…...
Unity 6 预览版正式发布
Unity 6 预览版发布啦,正式版本将于今年晚些时候正式发布! 下载链接: https://unity.com/releases/editor/whats-new/6000.0.0 Unity 6 预览版是 Unity 6 开发周期的最后一个版本,在去年 11 月 Unite 大会上,我们宣…...
如何跳过极狐GitLab 密钥推送保护功能?
极狐GitLab 是 GitLab 在中国的发行版,专门面向中国程序员和企业提供企业级一体化 DevOps 平台,用来帮助用户实现需求管理、源代码托管、CI/CD、安全合规,而且所有的操作都是在一个平台上进行,省事省心省钱。可以一键安装极狐GitL…...
Android高版本抓包总结
方案1 CharlesVirtualXposedJustTrustMe 推荐使用三星手机此方案 VirtualXposed下载链接:https://github.com/android-hacker/VirtualXposed/releases JustTrustMe下载链接:https://github.com/Fuzion24/JustTrustMe/releases/ 下载完成后使用adb命令…...
《AI视频类工具之五—— 开拍》
一.简介 官网:开拍 - 用AI制作口播视频用AI制作口播视频https://www.kaipai.com/home?ref=ai-bot.cn 开拍是一款由美图公司在2023年推出,利用AI技术制作的短视频分享应用。这款工具通过AI赋能,为用户提供了从文案创作、视频拍摄到视频剪辑、包装的一站式解决方案,极大地…...
面试经典算法150题系列-最后一个单词的长度
最后一个单词的长度 给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。 示例 1: 输入:s "Hello World&qu…...
RTT学习
电源管理组件 嵌入式系统低功耗管理的目的在于满足用户对性能需求的前提下,尽可能降低系统功耗以延长设备待机时间。 高性能与有限的电池能量在嵌入式系统中矛盾最为突出,硬件低功耗设计与软件低功耗管理的联合应用成为了解决矛盾的有效手段。 现在的各…...
前端面试题(二十五)|附赠完整面试流程
📝📝今日分享:前端面试题系列继续更新啦! 🤔🤔面试题是什么呢?这份前端面试题主要是上海某银行的中级前端面试题,面试时长属实没想到,挺短的!但从整个面试流程…...
【分布式系统】关于主流的几款分布式链路追踪工具
Jaeger 标准化与兼容性: Jaeger 支持 OpenTracing 和 OpenTelemetry 标准,这意味着它可以与各种微服务架构和应用框架无缝集成,提供了广泛的兼容性和灵活性。 数据存储选项: Jaeger 支持多种数据存储后端,如 Cassandra…...
【吸引力法则】探究人生欲:追求深度体验与宇宙链接
文章目录 什么是人生欲?唤醒人生欲:克服配得感的三大障碍1 第一大障碍:法执的压制2 第二大障碍:家庭的继承2.1 家庭创伤的代际传递2.2 家庭文化基因的传递2.2.1 “成年人最大的美德是让自己的生活过得更加精彩。”2.2.2 荷欧波诺波…...
REST framework-通用视图[Generic views]
Django’s generic views… were developed as a shortcut for common usage patterns… They take certain common idioms and patterns found in view development and abstract them so that you can quickly write common views of data without having to repeat yourself…...
行驶证OCR识别接口如何用Java调用
一、什么是行驶证OCR识别接口? 传入行驶证照片,行驶证图片上的文字信息,返回包括所有人、品牌型号、住址、车牌号、发动机号码、车辆识别代号、注册日期、发证日期等信息。 行驶证 OCR 接口的主要作用是代替手动输入,提高信息录…...
8月15日笔记
masscan安装使用 首先需要有c编译器环境。查看是否有c编译器环境: gcc -v如果系统中已经安装了 GCC,这个命令将输出 GCC 的版本信息。如果未安装,你会看到类似于 “command not found” 的错误消息。 如果没有下载,使用如下命令…...
CSS3 圆角
CSS3 圆角 引言 在网页设计中,圆角矩形是一种常见的设计元素,它们为页面带来了柔和的视觉体验。随着CSS3的推出,实现圆角矩形变得异常简单,无需依赖图片或复杂的JavaScript代码。本文将详细介绍CSS3中用于创建圆角矩形的border-…...
VUE项目中main.js中不能使用 @引入路径吗
VUE项目中main.js中不能使用 引入路径吗 vite.config已经配置了别名 但是在main.js中直接引入报错 修改成 相对路径后,保存消失 找到原因:vite.config 漏了引入 import { defineConfig } from ‘vite’ import vue from ‘vitejs/plugin-vue’ 导致…...
UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...
51c自动驾驶~合集58
我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留,CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制(CCA-Attention),…...
ESP32读取DHT11温湿度数据
芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...
【项目实战】通过多模态+LangGraph实现PPT生成助手
PPT自动生成系统 基于LangGraph的PPT自动生成系统,可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析:自动解析Markdown文档结构PPT模板分析:分析PPT模板的布局和风格智能布局决策:匹配内容与合适的PPT布局自动…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...
招商蛇口 | 执笔CID,启幕低密生活新境
作为中国城市生长的力量,招商蛇口以“美好生活承载者”为使命,深耕全球111座城市,以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子,招商蛇口始终与城市发展同频共振,以建筑诠释对土地与生活的…...
关于easyexcel动态下拉选问题处理
前些日子突然碰到一个问题,说是客户的导入文件模版想支持部分导入内容的下拉选,于是我就找了easyexcel官网寻找解决方案,并没有找到合适的方案,没办法只能自己动手并分享出来,针对Java生成Excel下拉菜单时因选项过多导…...
Qt 事件处理中 return 的深入解析
Qt 事件处理中 return 的深入解析 在 Qt 事件处理中,return 语句的使用是另一个关键概念,它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别:不同层级的事件处理 方…...
es6+和css3新增的特性有哪些
一:ECMAScript 新特性(ES6) ES6 (2015) - 革命性更新 1,记住的方法,从一个方法里面用到了哪些技术 1,let /const块级作用域声明2,**默认参数**:函数参数可以设置默认值。3&#x…...
