Коли у мене виникають такі запитання, я завжди запитую: "що б зробив Java-гуру?" :)
І я відповів би, що в цьому випадку, дивлячись на реалізацію String.trim().
Ось екстраполяція тієї реалізації, яка дозволяє використовувати більше обрізних символів.
Однак зауважте, що оригінальна обробка фактично видаляє всі знаки, які є <= ' ', тому вам, можливо, доведеться поєднувати це з оригіналом, щоб отримати бажаний результат.
String trim(String string, String toTrim) {
// input checks removed
if (toTrim.length() == 0)
return string;
final char[] trimChars = toTrim.toCharArray();
Arrays.sort(trimChars);
int start = 0;
int end = string.length();
while (start < end &&
Arrays.binarySearch(trimChars, string.charAt(start)) >= 0)
start++;
while (start < end &&
Arrays.binarySearch(trimChars, string.charAt(end - 1)) >= 0)
end--;
return string.substring(start, end);
}