ULID 解析器
解析 ULID 时间戳与随机段
校验与验证
🔒 100% 本地运行 — 你的数据不会离开当前页面由 Evan 维护•最近更新:2026年9月30日
选项模式
输入
每行贴一个 ULID,直接看时间信息和有效性;随机段显示与复制选项可在高级模式调整。
输出
ULID parse result will appear here
🔒 浏览器内本地处理 · ULID 时间戳解析
页面阅读模式
完整说明还包括常见问题处理、操作示例、代码片段、FAQ 和相关工具,便于核对结果或排查问题。
工具说明
每行解析一个 ULID,校验 26 字符 Crockford Base32 与最大值 7ZZZZZZZZZZZZZZZZZZZZZZZZZ。输入大小写不影响有效性;大写选项只改变输出表示。有效行显示编码的 48 位时间戳,以及可选的 20 位 Hex 随机段(80 位)。提取时间不能证明真实创建时间或跨系统事件顺序。输入及设置会保存在当前浏览器,清空可删除草稿。
生产可用片段
示例
text
7ZZZZZZZZZZZZZZZZZZZZZZZZZ → 有效最大值
80000000000000000000000000 → 越界失败门诊(高频踩坑)
字符集合法还不够
原因:26 字符 Base32 字符串可能比 ULID 多出两位。
修复:必须检查首字符范围,拒绝越界而不是截断。
场景配方
01
先检查 ULID 边界,再读取时间
目标:区分有效编码与超范围的 Base32 字符串。
- 分行输入全零 ULID、7ZZZZZZZZZZZZZZZZZZZZZZZZZ 和 80000000000000000000000000。
- 解析后确认前两条通过,第三条报告 128 位越界。
- 若只需要时间信息,可关闭随机段再复制。
结果:解析结果说明编码时间与格式有效性,不验证事件来源。
常见问题
支持哪些 ULID 字符串?
必须是 26 个 Crockford Base32 字符,大小写均可,不含 I、L、O、U。首字符须为 0–7,确保整体不超过 128 位。
为什么以 8 开头的值无效?
26 个 Base32 字符能容纳 130 位,但 ULID 只有 128 位。超过 7ZZZZZZZZZZZZZZZZZZZZZZZZZ 的值必须拒绝。
时间戳能证明 ID 的真实生成时间吗?
不能。它只是输入 ID 中编码的时间,生成方可以指定该值,不同系统时钟也可能不一致或回拨。
关闭大写输出后小写会被拒绝吗?
不会,ULID 校验仍不区分大小写。关闭后结果保留输入的大小写。
显示随机段选项影响哪些内容?
它同时控制界面显示和复制内容。关闭后,单行复制与全部复制都不包含随机段 Hex。
支持本地批量解析吗?
支持每行一个 ID,跳过空行并分别标记非法行。输入与选项保存在 localStorage,清空可删除草稿;输入内容不会上传。
继续浏览