返回
正则表达式教程:12小时制时间(hh:mm:ss)
正则表达式
2024-02-28 15:52:24
一、正则解释
正则表达式:
^(?:1[0-2]|0?[1-9]):[0-5]\d:[0-5]\d$
分解:
^
:匹配字符串的开头。(?:1[0-2]|0?[1-9])
: 匹配小时部分。它允许从10到12或从1到9的小时。:
:匹配冒号。[0-5]\d
: 匹配分钟部分,范围从00到59。[0-5]\d
: 匹配秒部分,范围从00到59。$
:匹配字符串的结尾。
二、使用场景
此正则表达式可用于:
- 验证用户输入的12小时制时间格式。
- 从文本中提取12小时制时间。
- 根据12小时制时间对数据进行排序或过滤。
三、代码示例
JavaScript
const regex = /^(?:1[0-2]|0?[1-9]):[0-5]\d:[0-5]\d$/;
const time = '11: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 = "^(?:1[0-2]|0?[1-9]):[0-5]\\d:[0-5]\\dimport java.util.regex.Pattern;
public class TimeValidation {
public static void main(String[] args) {
String regex = "^(?:1[0-2]|0?[1-9]):[0-5]\\d:[0-5]\\d$";
String time = "11:34:55";
boolean isValid = Pattern.matches(regex, time);
System.out.println(isValid); // 输出:true
}
}
quot;;
String time = "11:34:55";
boolean isValid = Pattern.matches(regex, time);
System.out.println(isValid); // 输出:true
}
}
PHP
<?php
$regex = "/^(?:1[0-2]|0?[1-9]):[0-5]\d:[0-5]\d$/";
$time = '11:34:55';
preg_match($regex, $time, $matches);
if (!empty($matches)) {
echo "时间格式有效";
}
Python
import re
regex = r"^(?:1[0-2]|0?[1-9]):[0-5]\d:[0-5]\dimport re
regex = r"^(?:1[0-2]|0?[1-9]):[0-5]\d:[0-5]\d$"
time = '11:34:55'
result = re.match(regex, time)
if result:
print("时间格式有效")
quot;
time = '11:34:55'
result = re.match(regex, time)
if result:
print("时间格式有效")