logo

Hvordan fjerne siste tegn fra streng i Java

I Java er det hovedsakelig tre klasser relatert til String . Klassene er streng, StringBuilder , og StringBuffer klasse som gir metoder relatert til strengmanipulering. Fjerner det første og siste tegnet fra strengen er også en operasjon som vi kan utføre på strengen.

I denne delen vil vi lære hvordan fjerne det siste tegnet fra String in Java . I den siste delen av denne delen har vi også forklart hvordan slette det første og siste tegnet i hvert ord i en streng .

Det er fire måter å fjerne det siste tegnet fra en streng:

  • Ved hjelp av StringBuffer.deleteCahrAt() Klasse
  • Ved hjelp av String.substring() Metode
  • Ved hjelp av StringUtils.chop() Metode
  • Ved hjelp av Vanlig uttrykk

Bruker StringBuffer Class

De StringBuffer klasse gir en metode deleteCharAt() . Metoden sletter et tegn fra den angitte posisjonen. Vi bruker metoden for å fjerne et tegn fra en streng i Java . Den godtar en parameter indeks av type int. Indeksen er posisjonen til et tegn vi ønsker å slette. Den returnerer dette objektet.

Syntaks:

 public StringBuffer deleteCharAt(int index) 

Det kaster StringIndexOutOfBoundsException hvis vi spesifiserer en negativ indeks eller indeksen er større enn eller lik lengden på strengen.

La oss implementere metoden i et eksempel.

RemoveLastCharcter1.java

 public class RemoveLastCharcter1 { public static void main(String args[]) { String string = 'Javatpoint is the best educational websites'; //creating a constructor of StringBuffer class StringBuffer sb= new StringBuffer(string); //invoking the method sb.deleteCharAt(sb.length()-1); //prints the string after deleting the character System.out.println(sb); } } 

Produksjon:

 Javatpoint is the best educational website 

I utgangen ovenfor ser vi at de siste tegnene er slettet.

quicksort-algoritme

Bruke String.substring()-metoden

De delstreng() er metoden til String-klassen. Den analyserer to parametere startIndex og endIndex av type int. Den returnerer en ny streng (understreng) . Det er ikke trådsikkert fordi det ikke gir et unntak hvis strengen er null eller tom.

Syntaks:

 public String substring (int beginIndex, int endIndex) 

Hvis beginIndex er negativ eller beginIndex > endIndex eller endIndex > lengden på strengen det kaster IndexOutOfBoundsException .

RemoveLastCharacter2.java

 public class RemoveLastCharacter2 { public static void main(String[] args) { //object of the class RemoveLastCharacter2 rlc = new RemoveLastCharacter2(); String string='Welcome to Javatpoint'; //method calling string=rlc.removeLastChar(string); //prints the string System.out.println(string); } //method to remove last character private String removeLastChar(String s) { //returns the string after removing the last character return s.substring(0, s.length() - 1); } } 

Produksjon:

 Welcome to Javatpoin 

Bruke StringUtils.chop()-metoden

De StringUtils klasse gir en hugge() metode for å fjerne det siste tegnet fra en streng. Metoden analyserer en parameter av typen String. Det aksepterer også null , som en parameter. Den returnerer strengen etter å ha fjernet siste tegn . Den returnerer også en nullstreng når vi legger inn en nullstreng.

Syntaks:

 public static String chop(String str) 

For å bruke hugge() metoden for StringUtils klasse, må vi legge til følgende avhengighet i pom.xml fil. Når vi legger til Apache commons lang3 jar i pom-filen laster den ned jar-filen og legger jar-filen til banen. Vi må importere pakken
org.apache.commons.lang3.StringUtils

 org.apache.commons commons-lang3 3.9 

Etter å ha lagt til avhengigheten, kan vi kalle chop()-metoden til StringUtils-klassen for å fjerne det siste tegnet fra strengen.

RemoveLastCharacter3.java

 import org.apache.commons.lang3.StringUtils; public class RemoveLastCharacter3 { public static void main(String[] args) { String string='Google'; //invoking method string=StringUtils.chop(string); //prints the string after chopping the last character System.out.println(string); } } 

Produksjon:

 Googl 

Bruke regulære uttrykk

Vi kan også bruke vanlig uttrykk for å fjerne eller slette det siste tegnet fra strengen. String-klassen gir replaceAll() metode som analyserer to parametere regulært uttrykk og erstatning av typen String. Metoden erstatter strengen med det spesifiserte samsvaret.

    regulært uttrykk:Det er uttrykket som strengen skal matche.erstatning:Det er erstatningsstrengen eller erstatningsstrengen for hver kamp.

Den returnerer den resulterende delstrengen.

Syntaks:

 public String replaceAll(String regex, String replacement) 

Det kaster PatternSyntaxException hvis syntaksen for regulære uttrykk er ugyldig.

RemoveLastCharacter4.java

 public class RemoveLastCharacter4 { public static void main(String[] args) { //creating an object of the class RemoveLastCharacter4 rlc=new RemoveLastCharacter4(); String string='Honesty is the best policy'; //method calling string=rlc.removeLastCharacter(string); //prints the string System.out.println(string); } public String removeLastCharacter(String str) { //the replaceAll() method removes the string and returns the string return (str == null) ? null : str.replaceAll('.$', ''); } } 

Produksjon:

 Honesty is the best polic 

Fjerne det første og siste tegnet i hvert ord i en streng

Vi kan også fjerne eller slette det første og siste tegnet i hvert ord i en streng. For å fjerne det første og siste tegnet bruker vi følgende trinn:

  • Del (bryt) strengen basert på mellomrommet.
  • For hvert ord, kjør en løkke fra den første til siste bokstaven.
  • Identifiser det første og siste tegnet i hvert ord.
  • Slett nå det første og siste tegnet i hvert ord.

RemoveFirstAndLastCharacter.java

 import java.util.*; public class RemoveFirstAndLastCharacter { static String removeFirstAndLast(String str) { //breaks the string based on space and makes the array of string String[] arrOfStr = str.split(' '); //stores the resultant string String result_string = ''; //iterate over the words for (String s : arrOfStr) { //removes first and last character result_string += s.substring(1, s.length() - 1) + ' '; } return result_string; } //main method public static void main(String args[]) { String string = 'Javatpoint is the best educational websites'; //prints the string before removing the first and last character System.out.println(string); //calling method and prints the string after removing the first and last character System.out.println(removeFirstAndLast(string)); } } 

Produksjon:

 Javatpoint is the best educational website avatpoin h es ducationa ebsit 

I utgangen ovenfor ser vi at det første og siste tegnet er fjernet fra hvert ord i strengen. Ordet 'er' er fjernet fullstendig fordi det bare har to tegn.