Próbuję zastąpić wszystkie powtarzające się znaki z ciągu w języku Java i pozwolić tylko jeden.Rekursywna replaceAll java
Na przykład:
aaaaa
--->a
Do tego, starałem się metodą replaceAll
:
"aaaaa".replaceAll("a*","a") //returns "aa"
I opracowali metodę rekurencyjną, która prawdopodobnie nie jest bardzo wydajny:
public String recursiveReplaceAll(String original,String regex, String replacement) {
if (original.equals(original.replaceAll(regex, replacement))) return original;
return recursiveReplaceAll(original.replaceAll(regex, replacement),regex,replacement);
}
Ta metoda działa, właśnie zastanawiałem się, czy było coś przy użyciu RegEx na przykład, który wykonuje pracę z lepszą wydajnością.
'replaceAll (" a + "," a ")' – rock321987