findDates method

List<String> findDates(
  1. String text
)

Implementation

List<String> findDates(String text) {
  final regex = RegExp(r'\b\d{2}/\d{2}\b');
  final matches = regex.allMatches(text);

  List<String> dates = matches.map((match) => match.group(0)!).toList();
  if (dates.isEmpty) {
    return [];
  }
  dates.sort((a, b) {
    final aParts = a.split('/');
    final bParts = b.split('/');
    final aDate = DateTime(int.parse(aParts[1]), int.parse(aParts[0]));
    final bDate = DateTime(int.parse(bParts[1]), int.parse(bParts[0]));
    return aDate.compareTo(bDate);
  });
  return dates;
}