HH:MM:SS 时间字符串的正则表达式模式

2023-11-27

我想解析一个hh:mm:ss细绳。 一个简单的就是([0-1]?\d|2[0-3]):([0-5]?\d):([0-5]?\d)期望2:3:24 or 02:03:24细绳。

我想更进一步并通过验证,即使在类似的情况下

  1. 如果你只输入 56,应该会通过,因为 56 可以被认为是 56 秒 [SS]
  2. 如果您输入 2:3 或 02:03 或 02:3 或 2:03 它应该通过。 2 分 3 秒 [MM:SS]
  3. 如果您输入 20:30:12 包含 20 小时 30 分 12 秒 [HH:MM:SS]
  4. 如果你输入 78:12 ,不通过 78 分钟是错误的......

基本上,如果找到一个“:”,则将“:”之前的数字视为MM,将“:”之后的数字视为SS 。如果找到两个“:”,则视为 HH:MM:SS

我想出了这个模式。

(^([0-1]?\d|2[0-3]):([0-5]?\d):([0-5]?\d)$)|(^([0-5]?\d):([0-5]?\d)$)|(^[0-5]?\d$)

看起来运行良好。我想知道任何其他更简单的正则表达式,可以完成这项工作。


^(?:(?:([01]?\d|2[0-3]):)?([0-5]?\d):)?([0-5]?\d)$

解释:

^                   # Start of string
(?:                 # Try to match...
 (?:                #  Try to match...
  ([01]?\d|2[0-3]): #   HH:
 )?                 #  (optionally).
 ([0-5]?\d):        #  MM: (required)
)?                  # (entire group optional, so either HH:MM:, MM: or nothing)
([0-5]?\d)          # SS (required)
$                   # End of string
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HH:MM:SS 时间字符串的正则表达式模式 的相关文章

  • 如何在 powershell 中使用正则表达式选择“catch”代码块?

    我正在尝试分析多个目录中的大量 powershell 脚本 并且希望将任何 Catch 代码块拉入列表 变量中 我正在尝试编写一个正则表达式来选择以下格式的任何块 Catch write Host Function MyInvocation
  • 正则表达式:如何表达没有下划线的 \w

    有没有简洁的表达方式 w but without 即 w 中包含的所有字符 除了 我问这个是因为我正在寻找最简洁的方式来表达域名验证 域名可以包含小写和大写字母 数字 句号和破折号 但不能包含下划线 w 包括以上所有内容 加上下划线 那么
  • 如果列表中的某个字符位于该字符之前,请选择该字符

    我有这个正则表达式 a z s gmi 该正则表达式选择 从我的文字中 sme a eliezovce 2015 Spolo ne pre Eur pu Osl vili aj 940 但我只想选择 没有 如果列表中的某些字符 a z 之前
  • 字边界正则表达式问题

    我在使用单词边界时遇到问题 b在我的正则表达式中 我正在使用 R 但当我尝试时问题也存在http regexr com http regexr com 我使用的模式是 bs l b 虽然我预计下面的第 1 行和第 3 行能够匹配此模式 但只
  • 如何让“grep”从文件中读取模式?

    假设有一个很大的文本文件 我只想打印与某些模式不匹配的行 显然 我可以使用egrep v patter1 pattern2 pattern3 现在 如果所有这些模式都在一个文本文件中怎么办 最好的制作方法是什么egrep从文件中读取模式 g
  • C# 正则表达式用于查找 中具有特定结尾的链接

    我需要一个正则表达式模式来查找字符串 带有 HTML 代码 中的链接 以获取文件结尾如 gif 或 png 的链接 示例字符串 a href site com folder picture png target blank picture
  • 如何使用 Perl 正则表达式匹配字符串末尾/开头处的空格或单词?

    我想找到与我的正则表达式匹配的序列 它们应该位于由空格包围的字符串中间 末尾或开头或者是字符串中唯一的东西 Example 我们假设序列 qwe45rty 就是我们正在寻找的 我希望能够对所有这些因素都抱有积极的态度 qwe45rty qw
  • Golang 正则表达式命名组和子匹配

    我正在尝试匹配正则表达式并获取匹配的捕获组名称 当正则表达式仅与字符串匹配一次时 这是有效的 但如果它与字符串匹配多次 SubexpNames不返回重复的名称 这是一个例子 package main import fmt regexp fu
  • 正则表达式匹配带有连字符和/或撇号的单词

    我正在寻找一个正则表达式来匹配带有连字符和 或撇号的单词 到目前为止 我有 w w w 这在大多数情况下都有效 但如果先有一个撇号 然后有一个连字符 例如 qu est ce 则它不匹配 我可以附加更多选项 尽管也许还有另一种更有效的方法
  • 正则表达式从字符串中提取 IP 和端口

    我正在使用 Perl 尝试从字符串中提取 IP 地址和端口 我尝试使用的正则表达式是 s sip 字符串是 sip 255 255 255 255 8080 transport TCP sip 255 255 255 255 8080 显然
  • 如何在 sed 中转义方括号[重复]

    这个问题在这里已经有答案了 我正在使用 grep 和 sed 解析遗留的 C 代码 当尝试替换方括号时 发生了一些奇怪的事情 以下代码替换方括号效果很好 echo xyx xzx xyx sed s g 结果是 xyx xzx xyx 当我
  • 如何在Matlab中打印带有千位分隔符的整数?

    我想使用逗号作为千位分隔符将数字转换为字符串 就像是 x 120501231 21 str sprintf 0 0f x 但随着效果 str 120 501 231 21 如果内置fprintf sprintf做不到 我想可以使用正则表达式
  • 如何使用 PHP 从内容中查找 URL?

    需要一个简单的 preg match 它将在内容中查找 c aspx 不带引号 如果找到 它将返回整个 url 举个例子 content div 4 a href m c aspx mt 01 9310ba801f1255e02e411d8
  • 删除匹配前的一个单词和一个单词

    匹配之前的一个单词可以是一组任何符号 例如 D E F 我有一个正则表达式 s w s XXX 输入示例 This is KKK M D D xXx PPP输出示例 This is KKK PPP 所以我需要删除 XXX 之前的 1 个单词
  • Slim 3 - 斜杠作为路由参数的一部分

    我需要使用可以包含斜杠 的参数来编写 URL 例如 经典的 hello username 路线 默认情况下 hello Fabien将匹配此路线 但不匹配 hello Fabien Kris 我想问你如何在 Slim 3 框架中做到这一点
  • 为正则表达式编写解析器

    即使经过多年的编程 我很羞愧地说我从未真正完全掌握正则表达式 一般来说 当问题需要正则表达式时 我通常可以 在一堆引用语法之后 想出一个合适的正则表达式 但我发现自己越来越频繁地使用这种技术 所以 自学并理解正则表达式properly 我决
  • 什么是仅匹配空字符串的正则表达式?

    有很多关于正则表达式的帖子来匹配潜在地空字符串 但我找不到任何提供正则表达式的字符串only匹配一个空字符串 我知道 将匹配任何行的开头并且 将匹配任何行的结尾以及字符串的结尾 像这样 匹配的内容远不止空字符串 如 n foobar n n
  • 具有连字符的 Oracle 正则表达式在 Windows 上给出的结果与在 Unix 上不同

    我有以下带有正则表达式的查询 select REGEXP REPLACE TEST 3304 V2 lt gt as REG from dual 当通过 SQL Plus 在Windows机器返回以下内容 SQL gt select REG
  • 使用 posix shell 测试字符串中的正则表达式

    如何测试字符串是否与特定字符串匹配正则表达式与基本 无 bash 或任何其他 posix shell 脚本 在 if 语句中 您可以使用expr在 POSIX shell 中计算正则表达式的命令 s Abc expr s alpha 3 e
  • 字符串中的注释和注释中的字符串

    我正在尝试使用 Python 和 Regex 计算 C 代码中包含的注释中的字符数 但没有成功 我可以先删除字符串以删除字符串中的注释 但这也会删除注释中的字符串 结果会很糟糕 是否有机会通过使用正则表达式来询问不匹配注释中的字符串 反之亦

随机推荐

  • 在逻辑删除后恢复 LongListSelector 中的滚动位置

    我正在尝试使用 WP7 Silverlight 工具包中的 LongListSelector 控件 这需要一些工作 但我终于让它与我的应用程序一起工作 不幸的是 我在正确处理逻辑删除过程时遇到了一些麻烦 当应用程序逻辑删除 或用户通过选择列
  • 如何在C#.NET中获得准确的下载/上传速度?

    我想使用 C NET 通过网络接口获得准确的下载 上传速度 我知道可以使用以下方法计算GetIPv4Statistics BytesReceived并使线程休眠一段时间 但它并没有给出我在浏览器中得到的输出 下面是来自 LINQPad 的一
  • 如何使用不显眼的 jQuery 验证手动重新验证/触发验证?

    我创建了自己的条件验证属性 通过继承来在客户端和服务器上验证我的 MVC 模型RequiredAttribute并实施IClientValidatable 这个想法是 如果我的模型上的布尔属性为 true 则需要另一个属性 在视图中 这表现
  • 为什么要在 Observable 函数上调用 .call() ?

    我是 Angular 的相对初学者 我正在努力理解我从 ng bootstrap 项目中阅读的一些源代码 源代码可以在这里找到 我对 ngOnInit 中的代码感到非常困惑 ngOnInit void const inputValues d
  • C 标准是否认为此标头中有一个或两个“struct uperms_entry”类型?

    您能否给出三个 C 标准 最好是 C99 或 C11 之一的章节和章节 表明以下头文件是否有一个或两个struct uperms entry类型在里面 ifndef UPERMS CACHE INCLUDE define UPERMS CA
  • Java中null是如何实现的?

    我知道 null 不是一种数据类型 But null只能分配给任何类型Object and String Example Object o null it tells that null is an object String b null
  • 如何根据内容动态调整 Twitter Bootstrap 模式的大小

    我有数据库内容 其中包含不同类型的数据 例如 Youtube 视频 Vimeo 视频 文本 Imgur 图片等 它们都有不同的高度和宽度 我在互联网上搜索时发现的只是将大小更改为仅一个参数 它必须与弹出窗口中的内容相同 这是我的 HTML
  • 如何在 Android 上检测网络是否(配置为)移动热点?

    从 Android 4 1 开始 您的设备可以检测是否已连接到移动热点 假定移动热点也运行 Android 4 1 或更高版本 此外 您还可以选择将网络标记为移动热点 在 设置 数据使用 溢出菜单 移动热点 下 但作为一个用户 我指的是开发
  • Perl 新行分隔符问题

    我有一个使用 CR LF 分隔记录的文件 但个别记录有时包含 LF while lt in gt extract record data 我正在尝试按上面的方式阅读此代码 这 正如我所期望的 会拆分仅包含 LF 的记录 然而 我希望重新分配
  • HTMLAgilityPack - 删除节点而不剥离内部文本

    我的html内容是 a href asdf asdf a h5 align left a href d570525d497 htm toc Table of Contents a br h5 我正在使用 HTML Agility Pack
  • 使用 junitPlatform 时设置系统属性

    我无法找到使用 Gradle 执行 JUnit 5 测试时如何设置系统属性 标准test任务可以配置如下 test systemProperty org slf4j simpleLogger defaultLogLevel warn 但是
  • 整数a; ...; (a == a) 失败?

    如果我们设置float and double键入至NaN那么它们不等于任何东西 包括他们自己 这样的事会发生吗int 如果将未初始化的变量与其自身进行比较 任何事情都可能发生 毕竟这是未定义的行为 对于初始化的 int 变量 这种情况不会发
  • 射线体素相交

    我想测试光线与体素场的交点 我可以通过计算与当前体素边缘的射线盒相交来天真地爬过体素场 然后对下一个体素执行相同的操作 直到碰到某些东西 但是没有更快的方法来追踪体素场吗 我在想一些类似的事情Bresenham 直线算法在 3D 中 可以快
  • TypeError:在未实现 HTMLElement 接口的对象上调用“click”

    我有一些 javascript 将数据发送到调用 php 页面的函数 但是我收到一个错误 无法找到任何信息 postData 调用位于另一个普通 JavaScript 函数的中间 但我无法让它将数据提交到 php 页面 function p
  • 如何发布照片。 iOS Facebook SDK 3.1

    我需要在墙上发布一张照片 图片是在我的 iPad 应用程序中生成的 这是我发现的最简单的方法 void postImageToFB UIImage image NSData imageData UIImageJPEGRepresentati
  • 将图像元数据 (EXIF/TIFF/IPTC) 写入 OS X 中的图像文件

    我正在创建一个照片编辑应用程序 到目前为止 我已经成功地从图像文件中读取元数据 在得到这个问题的答案后 在 OS X 上打开 NSImage 时从 EXIF 读取相机数据 source CGImageSourceCreateWithURL
  • Excel 互操作替代方案

    我已开始使用 Microsoft 为我的 C 应用程序之一提供的 Excel 互操作程序集 一切都很顺利 但似乎缺乏强类型 老实说感觉就像我正在编写 VBA 代码 是否有其他方法可以通过 C 与 Excel 进行交互 从而提供更好的 OO
  • Youtube APIeekTo() 以浮点秒为单位

    Youtube API seekTo 函数接受浮点时间还是帧时间 您可以向下钻取至小数点后两位吗 是的 API 完美接受 float 形式的eekTo 时间 无论是什么 它都会前进到浮动之前最近的关键帧 这是一个演示 http goo gl
  • 为什么要在列表视图中使用 Inflater

    我总是对为什么我们需要在 android 中使用 inflater 感到困惑 为什么它们在 ListView 中用于自定义布局 如下所示 什么是充气机 使用充气机有什么好处 public class MobileArrayAdapter e
  • HH:MM:SS 时间字符串的正则表达式模式

    我想解析一个hh mm ss细绳 一个简单的就是 0 1 d 2 0 3 0 5 d 0 5 d 期望2 3 24 or 02 03 24细绳 我想更进一步并通过验证 即使在类似的情况下 如果你只输入 56 应该会通过 因为 56 可以被认