Unix Timestamp (Epoch Seconds) Regex for Python
/^-?[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 Python. A rigorously tested regex reduces debugging time and protects your application from edge-case failures. The snippet below is ready to drop into your Python project — whether you're validating in a Django view, a FastAPI endpoint, or a standalone data processing script.
Python Implementation
# Unix Timestamp (Epoch Seconds)
# ReDoS-safe | RegexVault — Localization > Time Formats
import re
unix_timestamp_epoch_seconds_pattern = re.compile(r'^-?[0-9]{1,13}$')
def validate_unix_timestamp_epoch_seconds(value: str) -> bool:
return bool(unix_timestamp_epoch_seconds_pattern.fullmatch(value))
# Example
print(validate_unix_timestamp_epoch_seconds("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 Python developers because particularly important in Python web servers where CPU-bound regex operations can stall concurrent request handling. 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