← Gallerydate✨ Emoji Combos/^(?:(?:31(-|-|\.)(?:0?[13578]|1[02]|(?:Jan|Mar|May|Jul|Aug|Oct|Dec)))\1|(?:(?:29|30)(-|-|\.)(?:0?[1,3-9]|1[0-2]|(?:Jan|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec))\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:29(-|-|\.)(?:0?2|(?:Feb))\3(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:0?[1-9]|1\d|2[0-8])(-|-|\.)(?:(?:0?[1-9]|(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep))|(?:1[0-2]|(?:Oct|Nov|Dec)))\4(?:(?:1[6-9]|[2-9]\d)?\d{2})$/isugmPCRE2+12 years ago✓ Pre-loaded
About this regex
This regular expression validates dates in formats like DD-MM-YYYY or DD.MM.YYYY, allowing both numeric (01-12) and abbreviated textual (Jan-Dec) months. It accurately handles the varying lengths of months and includes specific logic to correctly validate February 29th for leap years. This makes it highly useful for form validation, data entry checks, and standardizing date inputs in applications.