Unix Timestamp (Epoch Seconds) Regex for JavaScript
/^-?[0-9]{1,13}$/What this pattern does
This page provides a lightweight, single-purpose regular expression for matching unix timestamp (epoch seconds), ported and verified for JavaScript. A rigorously tested regex reduces debugging time and protects your application from edge-case failures. The snippet below is ready to drop into your JavaScript project — whether you're validating in an Express middleware, a Next.js API route, or a client-side form.
Javascript Implementation
// Unix Timestamp (Epoch Seconds)
// ReDoS-safe | RegexVault — Localization > Time Formats
const unixTimestampEpochSecondsRegex = /^-?[0-9]{1,13}$/;
function validateUnixTimestampEpochSeconds(input: string): boolean {
return unixTimestampEpochSecondsRegex.test(input);
}
// Example
console.log(validateUnixTimestampEpochSeconds("0")); // trueTest Cases
Matches (Valid) | Rejects (Invalid) |
|---|---|
0 | 1.5 |
1704067200 | 1704067200.123 |
1705310045 | 1705310045000000 |
-1 | abc |
9999999999999 | 9999999999999999 |
When to use this pattern
This pattern is drawn from the Localization > Time Formats category and carries a ReDoS-safe certification. That matters for JavaScript developers because especially critical in long-running Node.js event loops where a ReDoS vulnerability can block the entire process. RegexVault audits patterns against known backtracking attack vectors, ensuring you have the necessary context before using this regex in a high-stakes production environment.
Common Pitfalls
Millisecond timestamps (13 digits) are commonly confused with second timestamps (10 digits) — 1704067200000 (ms) is 1000x the 1704067200 (s). Check the magnitude to determine the unit.
Technical Notes
Epoch 0 = 1970-01-01T00:00:00Z. Current timestamps are around 1.7 billion (10 digits). 13 digits = milliseconds. The maximum 32-bit epoch (Jan 19, 2038) causes the Y2K38 problem for systems using signed 32-bit integers.
Have a pattern that belongs in the vault?
Submit it for review — community-verified patterns get credited to your GitHub handle. Free submissions join the queue. Priority review available for $15.
Submit a Pattern