No, quel doppio for è già complicato e non è neanche generalizzato.
Ti conviene usare le "espressioni regolari" (se non hai limiti/restrizioni a riguardo per qualche motivo).
Crei un Pattern in cui la espressione descrive "una sequenza di una o più lettere" e poi con Matcher vai ad usare i find/appendReplacement/appendTail usando anche un StringBuffer.
Guarda questo mio vecchio post. Era per tutta un'altra cosa ma è molto molto simile a quanto dovresti fare tu. Se comprendi quell'esempio che avevo fatto ... capisci come farlo.![]()