stripTrailingWhitespace function
Strips trailing whitespace from each line while preserving line endings.
Implementation
String stripTrailingWhitespace(String str) {
final parts = str.split(RegExp(r'(\r\n|\n|\r)'));
final result = StringBuffer();
for (var i = 0; i < parts.length; i++) {
if (i % 2 == 0) {
result.write(parts[i].replaceAll(RegExp(r'\s+$'), ''));
} else {
result.write(parts[i]);
}
}
return result.toString();
}