Aus einem String aus Zahlen und Buchstaben, nur die Buchstaben rausfiltern?

kurwajebana

Grünschnabel
Hallo ich habe z.B. den folgenden String: "20041010050500013M02606" und möchte aus diesem String nur den Buchstaben 'M' rausfiltern. Anstelle des Buchstaben 'M' soll dann eine Zahl aus dem ASCII Code (-55) stehen. Also praktisch das 'M' in diesem String durch eine Zahl aus dem ASCII Code ersetzen. Die Zahl 77, die in der ASCII Tabelle den Buchstaben 'M' representiert, soll dann durch 55 subtrahiert werden! (77-55=22). Das ganze soll wieder in einem String stehen.
So soll das theoretisch aussehen:

aus "20041010050500013M02606"

wird "200410100505000132202606"


P.s
Der String sollte nur ein Beispiel sein, ich möchte natürlich verschiedene Strings ausprobieren, die nicht nur das 'M' enhalten sondern auch evtl. mehrere verscheidene Buchstaben.

Könnte mir einer von euch dabei Helfen? Danke im voraus
 
Zuletzt bearbeitet:
Moin!
Wie wärs damit:
Code:
public static void main(String[] args) {
        StringBuffer buff = new StringBuffer("20041ASD01aR00F50500013M0260MAC6");
        int length = buff.length();
        for(int i=0; i < length; i++){
            if(Character.isLetter(buff.charAt(i))){
                char c = buff.charAt(i);
                int  j = ((int)(c)) -55;
                buff.replace(i,i+1,""+j);
                length = length + Integer.toString(j).length()-1;
            }
            
            
        }
        System.out.println(buff.toString());
    }


Ausgabe:
Code:
200411028130142270015505000132202602210126

*grüssle*
MeinerEiner
 
Zurück