hutool.cron.cron_validator¶
Quartz 风格 Cron 表达式校验工具类。
Module Contents¶
Classes¶
Cron 表达式校验工具类。 |
API¶
- class hutool.cron.cron_validator.CronValidator¶
Cron 表达式校验工具类。
支持 Quartz 风格 6-7 字段 cron 表达式的逐字段校验和整体校验。
字段格式:
秒 分 时 日 月 周 [年]
特殊字符说明:
*: 匹配任意值-: 范围 (如1-5)/: 步长 (如0/5),: 列举多个值 (如1,3,5)?: 不指定(日、周字段)L: 最后(日、周字段)W: 最近工作日(日字段)#: 第几个星期几 (如6#3表示第三个星期五)
- static _valid_range(search_str: str, start_range: int, end_range: int) bool¶
校验范围表达式 (如
1-5) 是否在合法区间内。
- static _valid_sum(search_str: str, start_range_a: int, start_range_b: int, end_range_a: int, end_range_b: int, sum_range: int) bool¶
校验步长表达式 (如
0/5) 是否在合法区间内。
- static validate_second_or_minute(second_or_minute: str) bool¶
校验秒或分钟字段是否合法。
合法值:
*、范围 (0-59)、步长 (0/5)、枚举 (1,3,5)。- 参数:
second_or_minute – 秒或分钟值
- 返回:
是否合法
- static validate_hour(hour: str) bool¶
校验小时字段是否合法。
合法值:
*、范围 (0-23)、步长 (0/2)、枚举 (1,3,5)。- 参数:
hour – 小时值
- 返回:
是否合法
- static validate_day(day: str) bool¶
校验日字段是否合法。
合法值:
*、?、L、W、范围、步长、枚举。- 参数:
day – 日值
- 返回:
是否合法
- static validate_month(month: str) bool¶
校验月字段是否合法。
合法值:
*、范围 (1-12)、步长、枚举。- 参数:
month – 月值
- 返回:
是否合法
- static validate_week(week: str) bool¶
校验周字段是否合法。
合法值:
*、?、L、#、范围 (1-7)、枚举。- 参数:
week – 周值
- 返回:
是否合法
- static validate_year(year: str) bool¶
校验年字段是否合法。
合法值:
*、范围、步长、枚举(4 位年份,当前年至 2099)。- 参数:
year – 年值
- 返回:
是否合法
- static validate(cron_expression: str) bool¶
校验 Cron 表达式是否合法。
支持 6 字段 (秒 分 时 日 月 周) 和 7 字段 (秒 分 时 日 月 周 年) 格式。
- 参数:
cron_expression – Cron 表达式
- 返回:
是否合法
示例:
>>> CronValidator.validate("0 0 12 * * ?") True >>> CronValidator.validate("0 0/5 14 * * ?") True >>> CronValidator.validate("invalid") False
- static validate_cron_expression(cron_expression: str) bool¶
校验 Cron 表达式是否合法(
validate的别名)。- 参数:
cron_expression – Cron 表达式
- 返回:
是否合法
- static is_valid(cron_expression: Optional[str]) bool¶
判断 Cron 表达式是否合法。
None或空字符串返回False。- 参数:
cron_expression – Cron 表达式
- 返回:
是否合法