Zum Inhalt springen

bestimmte zeichen aus String entfernen


Empfohlene Beiträge

Geschrieben

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

Geschrieben

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 :D

---

So hab mal meinen Chef drauf angesprochen und der hat dann direkt was feines gebastelt :D 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)));

    }

}

Geschrieben
Original geschrieben von MasterSy

So hab mal meinen Chef drauf angesprochen und der hat dann direkt was feines gebastelt :D 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

Geschrieben

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.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...