formatThousands static method
Helper to format raw numeric strings into thousands-grouped notations.
Implementation
static String formatThousands(String val) {
final cleanValue = val.replaceAll(RegExp(r'[^\d.]'), '');
if (cleanValue.isEmpty) return '';
final parts = cleanValue.split('.');
final integerPart = parts[0];
final decimalPart = parts.length > 1 ? parts[1] : null;
final formattedInteger = integerPart.replaceAllMapped(
RegExp(r'(\d)(?=(\d{3})+(?!\d))'),
(Match m) => '${m[1]},',
);
if (decimalPart != null) {
return '$formattedInteger.$decimalPart';
}
return formattedInteger;
}