Using trim()
to eliminate white space in Dart and it doesn\'t work.
What am I doing wrong or is there an alternative?
String product = \"COC
Using trim()
trim()
method is used to remove leading and trailing whitespaces. It doesn't mutate the original string. If there is no whitespace at the beginning or the end of the String, it will return the original value.
print(' COCA COLA'.trim()); // Output: 'COCA COLA'
print('COCA COLA '.trim()); // Output: 'COCA COLA'
print(' COCA COLA '.trim()); // Output: 'COCA COLA'
Using trimLeft()
and trimRight()
What if you want to trim at the beginning only but not at the end, or maybe the opposite way. You can use trimLeft
for removing leading whitespaces only and trimRight
which removes trailing whitespaces only.
print(' COCA COLA '.trimLeft()); // Output: 'COCA COLA '
print(' COCA COLA '.trimRight()); // Output:' COCA COLA'
If the String can be null
, you can consider using null-aware operator.
String s = null;
print(s?.trim());
The above code will return null
instead of throwing NoSuchMethodError
.
Using regular expression (RegExp
)
If the original string contains multiple whitespaces and you want remove all whitespaces. Apply below solution
String replaceWhitespacesUsingRegex(String s, String replace) {
if (s == null) {
return null;
}
// This pattern means "at least one space, or more"
// \\s : space
// + : one or more
final pattern = RegExp('\\s+');
return s.replaceAll(pattern, replace);
}
Call like this
print(replaceWhitespacesUsingRegex('One Two Three Four', '')); // Output: 'OneTwoThreeFour'
See More: https://www.woolha.com/tutorials/dart-trim-whitespaces-of-a-string-examples