Hey,
ich bin gerade dabei, ein Script zu entwerfen, das Chateinträge "säubert". Pures Capslock wird in Lowercase konvertiert, eine Blacklist zensiert Wörter und eine Methode verhindert, dass ein Zeichen mehr als drei mal hintereinander vorkommt. An letzterer Methode hänge ich allerdings schon seit Tagen fest. Wenn ein Zeichen in einem String mehr als drei mal auftaucht, sollen alle Zeichen danach gelöscht bzw. mit "" replaced werden. "Haaaaaaaaaaaaalllooooooooooo" wird somit zu "Haaalllooo". Auf eine Routine mit Schleifen und Javas Stringfunktionen möchte ich aber verzichten. Ich habe eine Menge Lösungen zum Problem für RegEx gefunden, allerdings lassen sich die für PHP ausgelegten Expressions anscheinend nicht auf Java übertragen, weil das zweite Argument von String.replaceAll() RegEx ignoriert.
ist demnach nicht möglich. Lässt sich das irgendwie in Java mit RegEx umsetzen?
Lg
ich bin gerade dabei, ein Script zu entwerfen, das Chateinträge "säubert". Pures Capslock wird in Lowercase konvertiert, eine Blacklist zensiert Wörter und eine Methode verhindert, dass ein Zeichen mehr als drei mal hintereinander vorkommt. An letzterer Methode hänge ich allerdings schon seit Tagen fest. Wenn ein Zeichen in einem String mehr als drei mal auftaucht, sollen alle Zeichen danach gelöscht bzw. mit "" replaced werden. "Haaaaaaaaaaaaalllooooooooooo" wird somit zu "Haaalllooo". Auf eine Routine mit Schleifen und Javas Stringfunktionen möchte ich aber verzichten. Ich habe eine Menge Lösungen zum Problem für RegEx gefunden, allerdings lassen sich die für PHP ausgelegten Expressions anscheinend nicht auf Java übertragen, weil das zweite Argument von String.replaceAll() RegEx ignoriert.
Java:
msg = msg.replaceAll("[a-zA-Z,.!?]{3,}","/1/1/1");
Lg