tryParseDuration method
Implementation
Duration? tryParseDuration() {
if (this == null) {
return null;
}
final regex = RegExp(r"^(\d{2}):(\d{2}):(\d{2})(\.(\d{7}))?$");
final match = regex.firstMatch(this!);
if (match != null) {
try {
final hours = int.parse(match.group(1)!);
final minutes = int.parse(match.group(2)!);
final seconds = int.parse(match.group(3)!);
final microseconds = int.parse(match.group(5) ?? "0");
return Duration(
hours: hours,
minutes: minutes,
seconds: seconds,
microseconds: microseconds,
);
} catch (e) {
// Falls beim Parsen der Zahlen ein Fehler auftritt
return null;
}
} else {
// Rückgabe von null, wenn das Format nicht stimmt
return null;
}
}