logo

Sådan fjerner du sidste tegn fra streng i Java

I Java er der hovedsageligt tre klasser relateret til Snor . Klasserne er Snor, StringBuilder , og StringBuffer klasse, der giver metoder relateret til strengmanipulation. Fjernelse af det første og sidste tegn fra strengen er også en operation, som vi kan udføre på strengen.

I dette afsnit vil vi lære hvordan man fjerner det sidste tegn fra String in Java . Til sidst i dette afsnit har vi også forklaret hvordan man sletter det første og sidste tegn i hvert ord i en streng .

Der er fire måder at fjerne det sidste tegn fra en streng:

  • Ved brug af StringBuffer.deleteCahrAt() Klasse
  • Ved brug af String.substring() Metode
  • Ved brug af StringUtils.chop() Metode
  • Ved brug af Almindelig udtryk

Brug af StringBuffer Class

Det StringBuffer klasse giver en metode sletCharAt() . Metoden sletter et tegn fra den angivne position. Vi bruger metoden til at fjerne et tegn fra en streng i Java . Den accepterer en parameter indeks af typen int. Indekset er positionen for et tegn, vi ønsker at slette. Det returnerer dette objekt.

Syntaks:

 public StringBuffer deleteCharAt(int index) 

Det kaster StringIndexOutOfBoundsException hvis vi angiver et negativt indeks eller indekset er større end eller lig med længden af ​​strengen.

Lad os 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); } } 

Produktion:

 Javatpoint is the best educational website 

I ovenstående output ser vi, at de sidste tegn s er blevet slettet.

quicksort-algoritme

Brug af String.substring()-metoden

Det understreng() er metoden i String-klassen. Den analyserer to parametre startIndex og slutindeks af typen int. Det returnerer en ny streng (understreng) . Det er ikke trådsikkert, fordi det ikke kaster en undtagelse, hvis strengen er nul eller tom.

Syntaks:

 public String substring (int beginIndex, int endIndex) 

Hvis startIndex er negativ eller startIndex > endIndex eller den endIndex > længden af ​​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); } } 

Produktion:

 Welcome to Javatpoin 

Brug af StringUtils.chop()-metoden

Det StringUtils klasse giver en hakke() metode til at fjerne det sidste tegn fra en streng. Metoden analyserer en parameter af typen String. Det accepterer også nul , som en parameter. Det returnerer strengen efter at have fjernet sidste tegn . Det returnerer også en nul streng når vi indtaster en nul-streng.

Syntaks:

 public static String chop(String str) 

For at bruge hakke() metoden til StringUtils klasse, skal vi tilføje følgende afhængighed i pom.xml fil. Når vi tilføjer Apache commons lang3 jar i pom-filen downloader den jar-filen og tilføjer jar-filen til stien. Vi skal importere pakken
org.apache.commons.lang3.StringUtils

 org.apache.commons commons-lang3 3.9 

Efter tilføjelse af afhængigheden kan vi kalde metoden chop() i StringUtils-klassen for at fjerne det sidste tegn 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); } } 

Produktion:

 Googl 

Brug af regulære udtryk

Vi kan også bruge almindelig udtryk for at fjerne eller slette det sidste tegn fra strengen. String-klassen giver replaceAll() metode der analyserer to parametre regex og udskiftning af typen String. Metoden erstatter strengen med det angivne match.

    regulært udtryk:Det er det udtryk, som strengen skal matche.udskiftning:Det er erstatningsstrengen eller erstatningsstrengen for hver kamp.

Det returnerer den resulterende understreng.

Syntaks:

 public String replaceAll(String regex, String replacement) 

Det kaster PatternSyntaxException hvis det regulære udtryks syntaks 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('.$', ''); } } 

Produktion:

 Honesty is the best polic 

Fjernelse af det første og sidste tegn i hvert ord i en streng

Vi kan også fjerne eller slette det første og sidste tegn i hvert ord i en streng. For at fjerne det første og sidste tegn bruger vi følgende trin:

  • Opdel (bræk) strengen baseret på mellemrummet.
  • For hvert ord skal du køre en løkke fra det første til det sidste bogstav.
  • Identificer det første og sidste tegn i hvert ord.
  • Slet nu det første og sidste tegn 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)); } } 

Produktion:

 Javatpoint is the best educational website avatpoin h es ducationa ebsit 

I ovenstående output ser vi, at det første og sidste tegn er blevet fjernet fra hvert ord i strengen. Ordet 'er' er blevet fjernet fuldstændigt, fordi det kun har to tegn.