Lorsque j'ai ce genre de questions, je me demande toujours : " que feraient les gourous de Java ? " :)
Et je répondrais à cela, dans ce cas, en regardant l'implémentation de String.trim()
.
Voici une extrapolation de cette mise en œuvre qui permet d'utiliser davantage de caractères de coupe.
Toutefois, notez que la coupe originale supprime en fait tous les caractères qui sont <= ' '
Il se peut donc que vous deviez le combiner avec l'original pour obtenir le résultat souhaité.
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);
}