Mein Problem besteht darin, nur das letzte Vorkommen eines Zeichens in der Zeichenfolge durch ein anderes Zeichen zu ersetzen. Wenn ich String.replace (char1, char2) verwendete, ersetzt es alle Vorkommen des Zeichens in der Zeichenfolge.String ersetzen Methode Problem in Java
Zum Beispiel habe ich eine Adresse Zeichenfolge wie
String str = "Addressline1,Addressline2,City,State,Country,";
.
Ich muss das Vorkommen von ',' am Ende der Zeichenfolge durch '.' Ersetzen.
Mein Code, den Charakter zu ersetzen ist
str = str.replace(str.charAt(str.lastIndexOf(",")),'.');
nach dem Ersetzen die Zeichenfolge wie folgt aussieht:
Addressline1.Addressline2.City.State.Country.
Gibt es das Problem in Java SDK ?. Wenn ja, wie löst man es?
Nein, '# replace' nimmt ein Zeichenargument und ersetzt es durch das zweite. Du hast effektiv gesagt: "Finde den Charakter an der Stelle, an der das Zeichen ist", ', und ersetze dann alle diese Zeichen durch' .' " – Rogue
probiere dies aus. –
Es scheint etwas Verwirrung darüber zu geben, was Sie wollen. Möchten Sie (1) das letzte Zeichen der Zeichenkette durch '.' ersetzen, egal was es ist; (2) Ersetzen Sie das letzte Zeichen der Zeichenfolge durch '.'nur wenn es ein Komma ist; oder (3) das letzte _comma_ in der Zeichenkette durch '.' ersetzen, auch wenn dem Komma Zeichen folgen? – ajb