Veröffentlicht 28. Februar 200223 j Hallo! Mit replace kann man ja Chars in einem String ersetzen. Wie aber kann ich Chars aus einem String entfernen??? myString.replace('x','') um alle x zu entfernen geht ja nicht, da ja bei dem Char, der anstelle des ursprünglichen stehen soll, auch ein Wert angegeben sein muss. Please help! Technician
28. Februar 200223 j Hol dir aus java.util den StringTokenizer und gib als Delimeter den Char an den du raus Filtern willst, jag das ganze durch ne Schleife und häng alle Tokens aneinander in nen neuen String. Der Delimeter also das "Trennzeichen" wird dabei nicht ausgegeben. Gibt bestimmt auch andere Lösungen aber so geht es jedenfalls --- So hab mal meinen Chef drauf angesprochen und der hat dann direkt was feines gebastelt sollte schneller laufen, schaut dann so aus: import java.util.StringTokenizer; public class test { static String remove(String str, char c) { byte[] bytes = str.getBytes(); int d = 0; for (int s = 0; (s < bytes.length); s++) if (bytes[s] != c) bytes[d++] = bytes[s]; return(new String(bytes, 0, d)); } public static void main(String[] args) { StringTokenizer st = new StringTokenizer(args[0], args[1]); while (st.hasMoreTokens()) System.out.print(st.nextToken()); System.out.println("\n"+remove(args[0], args[1].charAt(0))); } }
28. Februar 200223 j Original geschrieben von MasterSy So hab mal meinen Chef drauf angesprochen und der hat dann direkt was feines gebastelt sollte schneller laufen, schaut dann so aus Hey danke! Auf die Idee mit dem StringTokenizer hat mich einer unserer Java-Spezialisten eben gerade auch gebracht! Gruß, Technician
28. Februar 200223 j Der Nachteil beim Stringtokenizer ist halt das des langsamer funktioniert als die andere Methode mit dem Bytekram, kommt halt drauf an wieviel du das verwendest, wie groß (lang) die Strings sind und ob Zeit ein wichtiger Faktor ist. Würde auf jedenfall beide Methoden mal testen.
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.