isDate function
return an error message if value does not pass the validation validation requires val: not equal null and the value must a date in this format (DD-MM-YYYY)
Implementation
String? isDate(val) {
try {
assert(val != null);
final List<String> strArr =
val.toString().trim().replaceAll(" ", "").split("-");
final day = strArr[0].trim();
final month = strArr[1].trim();
final year = strArr[2].trim();
assert(day.length == 2 && month.length == 2 && year.length == 4);
final dVal = int.parse(day);
final mVal = int.parse(month);
assert(dVal != 0 && dVal <= 31);
assert(mVal != 0 && mVal <= 12);
} catch (e) {
return "Date must be in this format (DD-MM-YYYY)";
}
return null;
}