Date Format Detective

You have Fri, 12 Jun 2026 10:30:00 +0300 and need the format string that produces it — in whatever language today’s codebase happens to be. Paste the date string; the detective reverse-engineers the pattern for six ecosystems at once. Best-effort heuristics: always double-check ambiguous day/month order.

Examples:

Cross-language token cheat sheet

ComponentstrftimePHPMoment/Day.jsJavaGo.NET
Year, 4-digit%YYYYYYyyyy2006yyyy
Year, 2-digit%yyYYyy06yy
Month 6%-m†nMM1M‡
Month 06%mmMMMM01MM
Month Jun%bMMMMMMMJanMMM
Month June%BFMMMMMMMMJanuaryMMMM
Day 2%-d†jDd2d‡
Day 02%ddDDdd02dd
Day 2ndjSDo
Weekday Fri%aDdddEEEMonddd
Weekday Friday%AlddddEEEEMondaydddd
Hour 9 (24h)%-H†GHHH‡
Hour 09 (24h)%HHHHHH15HH
Hour 9 (12h)%-I†ghh3h‡
Hour 09 (12h)%Ihhhhh03hh
Minute 05%Mimmmm04mm
Second 05%Ssssss05ss
Millisecond 123%f (µs)†vSSSSSS.000fff
AM / PM%pAAaPMtt
Offset +03:00%:z†PZXXX-07:00zzz
Offset +0300%zOZZZ-0700
Zone abbr. EEST%ZTzMST
Unix seconds%sUX

† glibc/BSD extension — on Windows strftime use %#d-style flags; Python supports %-d on Linux/macOS only. ‡ in .NET a single-character format string means a standard format; use %M or embed it in a longer pattern. Java tokens are for DateTimeFormatter (SimpleDateFormat differs in zone/era handling).