Erstat sidste forekomst af tegn i streng Java
Erstat sidste forekomst af tegn i streng Java | I dette indlæg sigter vi mod at erstatte den sidste forekomst af tegnet i strengen, for at gøre dette er der ingen direkte metoder eller funktioner tilgængelige i Java. Se også:- Find anden forekomst af tegn i streng Java
Lad os først forstå problemet med nogle eksempler. Et eksempel på Java-streng erstatte sidste forekomst.
String ="Hej"
Tegn, der skal erstattes ='l'
Tegn til tempo ='L'
I den ovenfor givne streng er den sidste forekomst af 'l' den anden forekomst på 3. position, som bør erstattes af 'L'. Resultatet bliver som vist nedenfor.
Resultat:Hej
Overhold nu nedenstående kode. For at erstatte sidste forekomst af tegn i streng java, har vi brugt en løkke, der itererer gennem strengen fra det sidste tegn til det første tegn i strengen. Hvis tegnet, der skal erstattes, bliver fundet, erstatter det tegnet med det angivne tegn.
Program til at erstatte sidste forekomst af tegn i streng Java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("Enter a String: ");
String string = scan.nextLine();
System.out.print("Enter a character to be replaced: ");
char replace = scan.next().charAt(0);
System.out.print("Enter a new character to place: ");
char newChar = scan.next().charAt(0);
// convert string to array of characters
char[] charArr = string.toCharArray();
for (int i = charArr.length - 1; i >= 0; i--) {
if (charArr[i] == replace) {
charArr[i] = newChar;
break;
}
}
// convert char array to string
string = new String(charArr);
System.out.println("After replacing the last occurrence " +
"of \'" + replace + "\' with \'" +
newChar + "\' = " + string);
scan.close();
}
}
Output:-
Indtast en streng:Program
Indtast et tegn, der skal erstattes:r
Indtast et nyt tegn, der skal placeres:X
Efter at have erstattet den sidste forekomst af 'r' med 'X' =ProgXam
Indtast en streng:Java
Indtast et tegn, der skal erstattes:J
Indtast et nyt tegn, der skal placeres:L
Efter at have erstattet sidste forekomst af 'J' med 'L' =Lava
Test-tilfælde, når et tegn ikke findes i den givne streng:-
Indtast en streng:Jeg elsker kodning.
Indtast et tegn, der skal erstattes:P
Indtast et nyt tegn, der skal placeres:Q
Efter at have erstattet den sidste forekomst af 'P' med 'Q' =Jeg elsker kodning.
Logikken i koden er som følger:- Vi itererer gennem løkken, indtil længden af strengen bliver 0. Så i while-løkken, hvis det tegn, der skal erstattes, findes, erstatter vi det og kommer ud af løkken.