1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
public static String cleanUp(final CharSequence s, boolean trim)
{
StringBuilder ret = new StringBuilder(s.length());
boolean inWhiteSpace = trim;
for (int i = 0; (i < s.length()); ) {
char c = s.charAt(i++);
if (Character.isWhitespace(c) || Character.isISOControl(c)) {
if (!inWhiteSpace) {
inWhiteSpace = true;
ret.append(' ');
}
} else {
inWhiteSpace = false;
ret.append(c);
}
}
if (trim && inWhiteSpace)
return (ret.length() > 1) ? ret.substring(0, ret.length()-1) : ""; //$NON-NLS-1$
return ret.toString();
} |