← ClaudeAtlas

cron-regex-buddylisted

用中文解释或生成 cron 表达式与正则表达式,逐字段/逐组讲清含义并给出匹配示例。触发词:'/cron-regex-buddy'、'解释这个 cron'、'帮我写个正则'、'这个正则什么意思'、'生成一个 cron'。Use when the user wants to explain or generate cron expressions or regular expressions in Chinese.
YuAICode/ai-skills · ★ 1 · AI & Automation · score 74
Install: claude install-skill YuAICode/ai-skills
# cron-regex-buddy — cron 与正则中文向导 把看不懂的 cron 表达式或正则表达式讲清楚,或者把中文需求翻译成正确的 cron / 正则,并自检合法性。 ## 何时触发 用户说: - `/cron-regex-buddy` - "解释这个 cron:`0 9 * * 1-5`" - "这个正则什么意思:`^\d{3}-\d{4}$`" - "帮我写个匹配手机号的正则" - "我想每天早上 9 点跑一次,cron 怎么写" - "生成一个 cron 表达式" / "cron 怎么填" - "这个表达式对吗" ## 两种工作模式 ### 模式 A:解释模式 用户给出一个 cron 或正则 → 逐段拆解,中文讲清每部分含义,并给出具体匹配示例。 **流程:** 1. 判断输入是 cron 还是正则(或两者都有)。 2. **先用 `bin/validate.sh` 自检**: ```bash bash <skill>/bin/validate.sh cron "<表达式>" bash <skill>/bin/validate.sh regex "<模式>" ``` 若 exit 2,把错误原因中文报给用户,不继续解释。 3. 解释 cron 时按字段顺序逐一说明: | 字段 | 位置 | 含义 | |------|------|------| | 分钟 | 1 | 0–59 | | 小时 | 2 | 0–23 | | 日 | 3 | 1–31 | | 月 | 4 | 1–12 | | 星期 | 5 | 0–7(0 和 7 均为周日) | | 秒(可选) | 6 | 0–59,仅部分调度器支持 | 常用符号说明:`*` 任意值、`,` 多值列举、`-` 范围、`/` 步进、`?` 日/星期互斥占位(Quartz 风格)、`L` 最后一天、`#` 第 N 个星期 X。 4. 解释正则时按从左到右逐组/逐字符说明,并给出 2–3 个匹配示例与 1–2 个不匹配示例。 5. **时区提醒**:解释 cron 时指出"cron 以服务器本地时区为准,未指定时区时请确认系统时区设置。" **输出格式(cron 示例):** ``` 表达式:0 9 * * 1-5 逐字段解释: - 分钟:0 → 整点(第 0 分) - 小时:9 → 早上 9 点 - 日: * → 每天 - 月: * → 每月 - 星期:1-5 → 周一到周五 含义:每个工作日(周一至周五)早上 9:00 执行。 匹配时刻示例:2026-06-08 09:00(周一)、2026-06-09 09:00���周二) 不触发时刻:2026-06-06 09:00(周六)、2026-06-08 09:30(非整点) ⚠️ 时区:cron 以服务器本地时区为准。如需北京时间请确认 TZ=Asia/Shanghai。 ``` **输出格式(正则示例):** ``` 表达式:^\d{3}-\d{4}$ 逐组解释: - ^ → 字符串开头锚点 - \d{3} → 恰好 3 位数字(0–9) - - → 字面连字符 - \d{4} → 恰好 4 位数字 - $ → 字符串结尾锚点 匹配示例:123-4567、00