开发者必备工具指南

Free 正则 · Cron · 时间戳 · URL · 格式化 · 转换 No signup · No data stored · Works offline

本指南涵盖的工具

Regex Tester
Live JavaScript regex with capture groups
Cron Expression Generator
Build and explain cron schedules
Unix Timestamp Converter
Epoch ↔ date with timezone support
URL Encoder & Decoder
Percent-encode URLs — RFC 3986
CSS Formatter & Beautifier
Format and minify CSS code
HTML Formatter & Beautifier
Indent and beautify HTML
SQL Formatter & Beautifier
Format MySQL and PostgreSQL queries
QR Code Generator
Generate QR codes for URLs and WiFi
Last updated: March 2026  ·  v1.0
Quick Answer
每位工程师每天都在用的必备开发者工具有哪些?

正则、cron、时间戳、URL 编码和代码格式化工具是每位开发者的日常工具。最重要的 5 点:

  1. JavaScript 中的正则与 Python 的风格不同——命名组用 (?<name>) 而非 (?P<name>)
  2. 云平台上的 cron 计划(AWS EventBridge、GitHub Actions)始终按 UTC 运行,而非你的本地时区。
  3. Unix 时间戳:10 位 = 秒,13 位 = 毫秒。JavaScript 的 Date.now() 返回毫秒。
  4. URL 编码:查询参数值始终用 encodeURIComponent(),绝不要用 encodeURI()
  5. SQL 关键字大小写不影响查询性能——它纯粹是风格约定。

最好的开发者工具是那种随时可用的——无需安装、无需账户、无需等待。本指南涵盖开发者每周要用上几十次的日常工具:测试正则表达式、构建 cron 计划、转换时间戳、编码 URL,或格式化 SQL 查询。每个工具都完全在你的浏览器中运行,在本地处理你的数据,绝不发送到任何服务器。

正则表达式:实时测试模式

正则表达式(regex)是开发者工具箱中最强大的工具之一。一个正则模式可以校验邮箱地址、从日志文件中提取数据,或用一行代码完成复杂的查找替换操作。

JavaScript 正则风格:我们的 正则测试器使用 JavaScript 内置的 RegExp 引擎,它是 Web 开发和 Node.js 的标准。

标志位:g(全局)、i(忽略大小写)、m(多行)、s(dotall)、u(Unicode)。大多数场景下,gi 是合适的组合。

捕获组:(pattern) 捕获一个组;(?:pattern) 分组但不捕获;(?<name>pattern) 为捕获命名。

常见模式:邮箱:/^[\w.-]+@[\w.-]+\.[a-z]{2,}$/i。UUID:/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i

Cron 表达式:正确地调度任务

标准 cron 表达式有 5 个字段:分(0–59)、时(0–23)、日(1–31)、月(1–12)和周几(0–7)。

特殊字符:* 表示每个值。*/n 表示每第 n 个值。a-b 表示一个范围。a,b,c 表示具体的几个值。

常见计划——每分钟:* * * * *    每天 UTC 午夜:0 0 * * *    每周一上午 9 点:0 9 * * 1    每个工作日下午 6 点:0 18 * * 1-5

6 字段 cron:AWS EventBridge、Spring Boot 和 Quartz 会增加一个秒字段。我们的 Cron 表达式生成器同时支持 5 字段和 6 字段两种变体。

时区陷阱:云调度器(AWS EventBridge、GitHub Actions 计划)按 UTC 运行。设定在本地时间上午 9 点触发的任务,会因夏令时的不同而在不同的 UTC 小时触发。

Unix 时间戳:秒、毫秒与 2038 年问题

Unix 时间戳记录自 1970 年 1 月 1 日 00:00:00 UTC 起经过的秒数。它是 API、数据库和日志文件中表示时间点的通用语言。

秒 vs 毫秒:10 位的数字几乎可以肯定是秒(例如 1700000000 = 2023 年 11 月)。13 位的数字是毫秒。JavaScript 的 Date.now() 返回毫秒;Python 的 time.time() 返回秒。我们的 时间戳转换器会自动检测精度。

2038 年问题:32 位有符号整数只能表示到 2038 年 1 月 19 日的时间戳。用 32 位整数存储时间戳的系统会在那一天溢出。64 位系统可以表示到大约 2920 亿年。

用 ISO 8601 表示可读时间戳:在 JSON 载荷和日志文件中始终使用 ISO 8601 格式(2024-01-15T10:30:00Z)。避免使用 01/15/2024 这类依赖地区的格式。

URL 编码:百分比编码与常见错误

URL 只能直接包含一组有限的 ASCII 字符。超出这组范围的字符必须进行百分比编码:用 % 加两位十六进制码替换。空格变成 %20& 变成 %26

encodeURI vs encodeURIComponent:encodeURI() 编码完整的 URL,保留具有结构意义的字符。encodeURIComponent() 编码 URL 的一个组成部分(单个查询参数值),几乎会编码所有字符,包括 &=

最常见的 bug:对查询参数值使用 encodeURI(),会让 & 未被编码从而破坏查询字符串。单个参数值请始终使用 encodeURIComponent()

重复编码:对已编码的字符串再次编码会得到 %2520 而不是 %20。如果不确定输入是否已编码,请先解码一次再重新编码。

关于开发者工具的常见问题

为什么我的正则在 Python 里能用,在 JavaScript 里却不行?

两个最常见的原因是:Python 的 re 模块使用不同的正则风格,且命名组的语法不同——JavaScript 需要把 (?P<name>) 改成 (?<name>)

如何生成一个在工作日每 15 分钟运行的 cron 表达式?

使用 */15 9-17 * * 1-5*/15 在第 0、15、30、45 分钟运行;9-17 限定在工作时间;1-5 限定为周一到周五。用我们的 Cron 生成器可视化地构建并验证它。

当前的 Unix 时间戳是多少?

使用我们的 时间戳转换器——它会实时更新显示当前时间戳。在代码中:JavaScript 用 Math.floor(Date.now() / 1000) 取秒,Python 用 import time; time.time()

为什么我的 URL 参数在 & 字符之后就断了?

& 字符是查询字符串的分隔符。如果你的参数值里含有字面的 &,就必须把它百分比编码为 %26。用我们的 URL 编码工具的组件模式,可正确编码单个参数值。

团队该采用哪种 SQL 格式化风格?

选定一种风格,并用 linter 强制执行。最常见的约定是关键字大写(SELECT、FROM、WHERE),且每个子句独占一行。我们的 SQL 格式化工具会应用一致的格式,并支持可配置的关键字大小写。