Coba Cek Tanggal Anda (format tanggal :DD-MM-YYYY) :

     


Pendahuluan

Melakukan validasi tanggal sebenarnya bisa dilakukan dengan library yang ada. Tetapi kita juga bisa melakukannya dengan Regex.

Bagaimana format tanggal, khususnya di Indonesia ?

Kalau kita lihat di Indonesia, format tanggal yang umum dipakai adalah :

  • YYYY-MM-DD , contoh : 2020-03-15
  • DD-MM-YYYY , contoh : 15-03-2020
  • YYYY/MM/DD , contoh : 2020/03/15
  • DD/MM/YYYY , contoh : 15/03/2020

Ada juga yang memakai format MM-DD-YYYY (contohnya 03-15-2020), dimana bulan diletakkan di posisi pertama, tapi jarang dipakai di Indonesia. Mungkin itu adalah format tanggal yang umum dipakai di luar negeri.

Dari format diatas, coba kita ambil format yang umum saja, misalnya DD-MM-YYYY. Dari format regex diatas, kita nanti bisa membuat format yang lain, karena pembedanya hanyalah letak dan karakter pemisahnya saja.


Regex Tanggal versi 1 (sederhana):

^\d{2}-\d{2}-\d{4}$

artinya :
validasi karakter sebanyak 2 angka untuk tanggal.
2 angka untuk bulan.
4 angka untuk tahun.
ditambahkan validasi pemisah antara tahun, bulan, dan tanggal adalah karakter -

Regex Tanggal versi 2 (menengah):

^([0123][0-9])-([0][1-9]|[1][0-2])-\d{4}$

Artinya :
validasi 2 karakter pertama adalah angka, angka pertama 0 s/d 3, dan angka kedua adalah antara 0 s/d 9.
validasi 2 karakter berikutnya adalah angka, angka pertama 0 atau 1, dan angka kedua adalah antara 1 s/d 9.
4 karakter terakhir adalah angka tahun.

Regex Tanggal versi 3 (cukup lengkap) :

'^(0[1-9]|[12][0-9]|3[01])-(0[1-9]|1[0-2])-\d{4}$'

Artinya
validasi 2 karakter pertama, 2 angka tanggal untuk 01..09, 10..29, 30, 31.
validasi 2 karakter bulan, untuk 01..09, 10.11,12.
4 karakter terakhir adalah angka tahun.