日期时间格式的动态正则表达式

2023-12-19

是否有现有的解决方案可以根据给定的日期时间格式模式动态创建正则表达式?支持的日期时间格式模式并不重要(JodaDateTimeFormat, java.text.SimpleDateTimeFormat或其他)。

作为一个具体示例,对于给定的日期时间格式,例如dd/MM/yyyy hh:mm,它应该生成相应的正则表达式来匹配指定格式内的日期时间。


我猜你的时间格式可以用有限的字母表来构建。这意味着,"HH"始终是 24 小时制的“小时”,"dd"始终是带有前导零的日期,依此类推。

由于时间格式的顺序性质,您可以尝试对格式字符串进行标记"dd/mm/yyyy HH:nn"到一个数组中["dd", "/", "mm", "/", "yyyy", " ", "HH", ":", "nn"]。然后继续通过替换从该数组形成一个模式字符串"HH" with "([01][0-9]|2[0-3])"等等。将这些模式原子预先构建到查找表/数组中。数组中不在查找表中的所有部分都是文字。根据正则表达式规则将它们转义并将它们附加到您的模式字符串中。


编辑:作为基于正则表达式的解决方案的副作用,当您将查找表的所有正则表达式“原子”放入括号并跟踪给定格式字符串中的顺序时,您将能够使用子匹配来提取从匹配中获取所需的组件并将其输入 CreateDate 函数中,从而完全跳过 ParseDate 部分。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

日期时间格式的动态正则表达式 的相关文章

  • Java 正则表达式 电子邮件

    首先 我知道不建议使用正则表达式发送电子邮件 但我必须对此进行测试 我有这个正则表达式 b A Z0 9 A Z0 9 A Z 2 4 b 在Java中 我是这样做的 Pattern p Pattern compile b A Z0 9 A
  • YouTube 完整的 Java 正则表达式

    我需要解析几个页面才能获取他们所有的 Youtube ID 我在网上找到了很多正则表达式 但是 Java 的正则表达式并不完整 它们要么除了 ID 之外还给我垃圾 要么错过了一些 ID 我发现似乎完整的一个是托管的here https st
  • 如何使用匹配(正则表达式)验证用户名?

    我试图将以下表达式放入 matches 函数中 但我猜想在尝试编译规则时会出现错误 a zA Z a zA Z0 9 a zA Z0 9 a z0 9 validate规则如下 validate newData val auth uid n
  • 西班牙语单词的正则表达式是什么?

    正则表达式语言使用 B 来包含 A Z a z 0 9 和 并且 b 被定义为单词边界 如何编写匹配所有有效西班牙语单词 包括诸如 等字符 的正则表达式 我正在使用 NET 使用西班牙语区域设置并使您的正则表达式区域设置敏感
  • 匹配可能存在或可能不存在的组

    我的正则表达式需要解析一个如下所示的地址 BLOOKKOKATU 20 A 773 00810 HELSINKI SUOMI 1 2 3 4 第一组 第二组和第三组将始终存在于地址中 第 4 组可能不存在 我编写了一个正则表达式来帮助我获得
  • 如何在 Rails 中格式化日期时间?

    在我的 Rails 视图中 我有以下显示日期时间的代码 该行的结果如下 2013 02 02 01 00 00 UTC 我该如何更改它 使其显示为 2 2 13 X 00 PST 使用红宝石的strftime 关于日期 日期时间 看一下文档
  • 如何根据python中的文件名检索每个文件的datemodtime?

    我当前的流程涉及循环遍历源目录并将每个文件的名称添加到 python 中的数据帧中 我也想获取每个文件的修改日期 import datetime import os import pandas as pd set src directory
  • 仅使用 mod_rewrite 重定向主页

    我有一个需要重定向的网站 但我不能只重定向 目录 因为服务器上的文件夹中还有其他网站 这样做也会重定向它们 不好 因此 我的 htaccess 文件包含一堆针对各个 HTML 页面的 301 重定向 并且这些文件工作得很好 但我需要重定向主
  • 按月/年间隔汇总每日数据

    我并不经常需要在 R 中处理日期 但我认为这相当简单 我有一列代表数据框中的日期 我只想创建一个新的数据框 使用日期按月 年总结第二列 最好的方法是什么 我想要第二个数据框 这样我就可以将它提供给绘图 您能提供的任何帮助将不胜感激 编辑 供
  • 非常基本的正则表达式场景与我对 libstdc++-v3 的期望不同

    我得到的行为与我的预期不同 也与 Microsoft C 不同 考虑以下 test cpp 文件 include
  • Apache 配置:正则表达式禁止访问以点开头的文件/目录

    我想禁用对其名称以点开头的任何文件或目录的访问 我想出了以下方法 但只有当它们直接位于文档根目录中时 它才会禁用对以 DOT 开头的文件 目录的访问
  • preg_match_all JS 等效吗?

    Javascript 中是否有与 PHP 的 preg match all 等效的函数 如果没有 将正则表达式的所有匹配项放入数组的最佳方法是什么 我愿意使用任何 JS 库来让它变得更容易 您可以使用match使用全局修饰符 gt gt g
  • 计算距离早上 8 点还有多少小时

    我知道如何计算两个日期之间的差异 但如何计算给定日期与下一个上午 8 点之间的时间 var now DateTime Now var tomorrow8am now AddDays 1 Date AddHours 8 double tota
  • 在 p 标签中换行/换行

    我有多个文本文件 需要使用正则表达式将每个段落包装在 p 标记中 即之前 Paragraph 1 Paragraph 2 Paragraph 3 After p Paragraph 1 p p Paragraph 2 p p Paragra
  • 如何使用Oracle在日期和时间之间添加字母“T”?

    我想使用 oracle 在日期和时间之间添加字母 T 像这样 2015 01 01T00 00 00 日期脚本 to char l date generated yyyy mm dd hh24 mi ss 甲骨文文档 http docs o
  • 句子中模糊的电子邮件地址

    我正在输出日志消息 需要隐藏其中的电子邮件地址 日志消息可能如下所示 A lead was saved for email protected cdn cgi l email protection Date 11th December 20
  • 在 LINQ 中确定具有分钟精度的日期时间值的相等性

    我需要使用分钟精度比较两个日期时间值以确定相等 完全相同 这是最好的方法吗 我的日期可能有秒和毫秒 但我只想考虑到分钟 where Math Abs datetime1 Subtract datetime2 TotalMinutes 0 检
  • 如何在正则表达式中编写可选单词?

    我想编写一个识别以下模式的 java 正则表达式 abc def the ghi and abc def ghi 我试过这个 abc def the ghi 但是 它没有识别第二种模式 我哪里出错了 abc def the ghi 删除多余
  • 在 Shell 中提取匹配模式后的字符串

    如何提取 Shell 脚本中匹配模式后面的任何字符串 我知道 Perl 脚本中的此功能 但不知道 Shell 脚本中的功能 以下是示例 subject 01 这是一个示例主题 可能会有所不同 我必须提取 Subject 01 后面的任何字符
  • 正则表达式获取模式的最后一次出现

    我有一个字符串 我需要选择最后一次出现的模式 该字符串是 1302638400000 0 0 1302724800000 0 610 64999999999998 1302811200000 0 2266 6500000000001 130

随机推荐

  • 如何识别分区的名称

    从下面的分区中如何知道哪些分区是引导分区 哪些分区是系统分区 我需要执行任何不同的命令来读取分区名称吗 cat proc partitions major minor blocks name 253 0 409600 zram0 179 0
  • 在直方图中绘制 x 刻度 matplotlib

    我想绘制给定名称对应的 x 我的意思是 对于foo它必须绘制 10 20 30 以直方图的形式并且所有 foo bar baz 需要位于相同的位置graph http upload wikimedia org wikipedia commo
  • web.config 单用户基本身份验证

    在 nginx 中 我可以创建一个发送的身份验证响应 WWW Authenticate 基本领域 专用网络 导致弹出单个用户 密码的登录信息而不创建 login aspx 这是我的配置设置
  • Java 设计问题:强制方法调用顺序

    最近在采访中有人问我一个问题 Problem 有一个类旨在分析代码的执行时间 类是这样的 Class StopWatch long startTime long stopTime void start set startTime void
  • jQuery如何在不检查扩展名的情况下检查上传的文件是否是图像?

    这里是新手 问题是我目前已经编写了一种方法来检查上传的文件大小和扩展名以验证它 然而 检查扩展并不是一个解决方案 因为这种验证可能会导致很多问题 我想做的是检查实际的文件类型并验证它而不使用扩展方法 我尝试过使用jQuery 文件验证器 h
  • 转码视频文件之前需要检查视频分辨率

    我正在使用弹性转码器转换视频文件 AWS Lambda函数从s3存储桶获取视频文件并根据PresetId进行转换 但是 我需要将视频文件分辨率与 PresetId 进行比较 如果视频文件分辨率高于PresetId视频分辨率 则转换该视频文件
  • 文件不以“%PDF-”开头

    昨天我遇到了一个特殊的问题 一位客户将我的一个 Delphi 应用程序安装在一些东芝笔记本电脑上 一切都很好 直到生成一些 Acrobat 文件作为 Rave 7 报告时 才产生了主题错误 这些笔记本电脑安装了 Acrobat 7 Stan
  • 找不到“Flutter/Flutter.h”文件 webview_flutter-1.0.7

    请帮我 我不知道是什么问题 但我认为是因为我更新到了最新版本的 flutter 我尝试过 flutter clean rm podfile 等等 但我无法解决这个问题 是颤振的问题吗 我花了两天时间尝试修复它 但没有成功 我更新了我所有的
  • Haskell 使用惰性 mmap 读取最后一行

    我想读取文件的最后一行 并确保它的字段数与第一行相同 我不关心中间的任何内容 我使用 mmap 是因为它对大文件的随机访问速度很快 但遇到了不理解 Haskell 或懒惰的问题 gt import qualified Data ByteSt
  • 操作员使用 tempdb 溢出......带有变量但不带有文字

    需要帮助理解此 SQL Server 行为 我有一个相当基本的查询 比如 select x y sum z from table where date between start and end group by x y 行数较多 筛选条件
  • 导入模块中的 Angular 2 路由覆盖当前路由

    这是笨蛋 https plnkr co edit WIFNVIEVqls4gXk21Muj https plnkr co edit WIFNVIEVqls4gXk21Muj 有 2 个模块都定义了路由 模块 2 导入模块 1 以使用其中的组
  • AWS EMR 在集群中所有已运行的计算机上执行“引导”脚本

    我有一个 24 7 全天候运行的 EMR 集群 我无法将其关闭并启动新的 我想做的是在已经运行的集群上执行引导操作之类的操作 最好使用 Python 和 boto 或 AWS CLI 我可以想象分两步完成此操作 1 在所有正在运行的实例上运
  • 使用 mongodb-memory-server 进行单元测试时出现“RangeError:超出最大调用堆栈大小”

    我正在尝试对一些打字稿逻辑进行单元测试jest https github com facebook jest 我在用mongoose https github com Automattic mongoose为了与 mongo 数据库交互mo
  • 有没有关于如何在 iPhone 上处理 OFX 的库或示例?

    我正在开发一款资金处理 iPhone 应用程序 并且希望使用开放金融交易 OFX 标准与消息源进行交互 提供有关该标准的信息here http geekswithblogs net Lance archive 2007 06 27 E Ba
  • 网络的完整示例?

    我读过网络快速开始 http hackage haskell org packages archive netwire 4 0 7 doc html Control Wire html 但我无法想象整个事情在 真实 应用程序中的样子 由于本
  • .bat 中的 IF、CALL、EXIT 和 %ERRORLEVEL%

    谁能帮我理解的行为 ERRORLEVEL 变量以及为什么在 a 之后没有设置它CALL当在一个IF 即ECHO ERRORLEVEL 2 line ECHO OFF SET ERRORLEVEL VERIFY gt NUL ECHO ERR
  • 发送/传递的 Azure 服务总线主题订阅消息的日志在哪里?

    搜索无效后 我在哪里可以看到哪些 Azure 服务总线消息 内容 已发送到给定主题 订阅以及哪些消息已交付的日志 列表 我必须激活特殊功能吗 如果有 是哪一个 新的还是 经典 的 Azure 管理门户 Thanks 据我所知 你不能在任何一
  • mmap() 使用进程虚拟内存布局的哪一部分?

    The mmap 函数应在进程虚拟地址空间和设备文件或物理内存区域之间建立映射 A 进程虚拟内存布局有以下部分 哪个地区的进程虚拟地址空间 does mmap 用于映射 Mmap 使用 未分配的内存 请注意 您绘制的图片不太可能在任何 30
  • 运算符“==”不能应用于“方法组”类型的操作数

    我有以下返回的函数true or false public bool ValidateURL if string IsNullOrEmpty txt22 Text string IsNullOrEmpty txt33 Text return
  • 日期时间格式的动态正则表达式

    是否有现有的解决方案可以根据给定的日期时间格式模式动态创建正则表达式 支持的日期时间格式模式并不重要 JodaDateTimeFormat java text SimpleDateTimeFormat或其他 作为一个具体示例 对于给定的日期