返回

正则表达式教程:验证24小时制时间

正则表达式

一、正则解释

^(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d$
  • ^: 匹配字符串的开头。
  • (?:[01]\d|2[0-3]): 匹配小时部分,可以是 00 到 23 之间的数字。
  • : 匹配分隔符冒号。
  • [0-5]\d: 匹配分钟部分,可以是 00 到 59 之间的数字。
  • : 匹配分隔符冒号。
  • [0-5]\d: 匹配秒部分,可以是 00 到 59 之间的数字。
  • $: 匹配字符串的结尾。

二、使用场景

此正则表达式可用于以下场景:

  • 验证用户输入的 24 小时制时间格式。
  • 从文本中提取 24 小时制时间戳。
  • 比较和排序 24 小时制时间。

三、代码示例

JavaScript

const regex = /^(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d$/;
const time = '23:34:55';
console.log(regex.test(time)); // true

Java

import java.util.regex.Pattern;
public class TimeValidation {
    public static void main(String[] args) {
        String regex = "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d
import java.util.regex.Pattern;
public class TimeValidation {
    public static void main(String[] args) {
        String regex = "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$";
        String time = "23:34:55";
        boolean isValid = Pattern.matches(regex, time);
        System.out.println(isValid); // true
    }
}
quot;
; String time = "23:34:55"; boolean isValid = Pattern.matches(regex, time); System.out.println(isValid); // true } }

PHP

<?php
$regex = "/^(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d$/";
$time = '23:34:55';
preg_match($regex, $time, $matches);
var_dump($matches); // ['23:34:55']
?>

Python

import re
regex = "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d
import re
regex = "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$"
time = '23:34:55'
result = re.match(regex, time)
print(bool(result)) # True
quot;
time = '23:34:55' result = re.match(regex, time) print(bool(result)) # True