In Java zijn er hoofdzakelijk drie klassen die verband houden met de Snaar . De lessen zijn Snaar, StringBuilder , En StringBuffer klasse die methoden biedt die verband houden met tekenreeksmanipulatie. Het eerste en laatste teken uit de string verwijderen is ook een bewerking die we op de snaar kunnen uitvoeren.
In dit gedeelte zullen we leren hoe je het laatste teken uit String in verwijdert Java . Aan het einde van dit gedeelte hebben we het ook uitgelegd hoe u het eerste en laatste teken van elk woord in een tekenreeks verwijdert .
Er zijn vier Manieren om het laatste teken uit een string te verwijderen:
- Gebruik makend van StringBuffer.deleteCahrAt() Klas
- Gebruik makend van Tekenreeks.substring() Methode
- Gebruik makend van StringUtils.chop() Methode
- Gebruik makend van Reguliere expressie
StringBuffer-klasse gebruiken
De StringBuffer klas biedt een methode verwijderCharAt() . De methode verwijdert een teken van de opgegeven positie. We gebruiken de methode om een teken uit a te verwijderen tekenreeks in Java . Het accepteert een parameter inhoudsopgave van het type int. De index is de positie van een teken dat we willen verwijderen. Het retourneert dit object.
Syntaxis:
public StringBuffer deleteCharAt(int index)
Het gooit StringIndexOutOfBoundsException als we een negatieve index opgeven of als de index groter is dan of gelijk is aan de lengte van de string.
Laten we de methode in een voorbeeld implementeren.
VerwijderLastCharcter1.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); } }
Uitgang:
Javatpoint is the best educational website
In de bovenstaande uitvoer zien we dat het laatste teken s is verwijderd.
Linux hoe je een map hernoemt
Met behulp van de String.substring()-methode
De subtekenreeks() is de methode van de klasse String. Het parseert twee parameters beginIndex En eindIndex van het type int. Er komt een nieuwe terug tekenreeks (subtekenreeks) . Het is niet thread-safe omdat er geen uitzondering wordt gegenereerd als de string nul of leeg is.
Syntaxis:
public String substring (int beginIndex, int endIndex)
Als de beginIndex is negatief of beginIndex > eindIndex of de endIndex > lengte van de tekenreeks het gooit IndexOutOfBoundsException .
VerwijderLaatsteKarakter2.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); } }
Uitgang:
Welcome to Javatpoin
Met behulp van de StringUtils.chop()-methode
De StringUtils klasse biedt een karbonade() methode om het laatste teken uit een string te verwijderen. De methode parseert een parameter van het type String. Het accepteert ook nul , als parameter. Het retourneert de string na het verwijderen van de laatste teken . Het retourneert ook een nulreeks wanneer we een nulreeks invoeren.
Syntaxis:
public static String chop(String str)
Voor het gebruik van de karbonade() werkwijze van de StringUtils klasse, moeten we de volgende afhankelijkheid toevoegen in de pom.xml bestand. Wanneer we de Apache commons lang3 jar in het pom-bestand downloadt het jar-bestand en voegt het jar-bestand toe aan het pad. We moeten het pakket importeren
org.apache.commons.lang3.StringUtils
org.apache.commons commons-lang3 3.9
Na het toevoegen van de afhankelijkheid kunnen we de methode chop() van de klasse StringUtils aanroepen om het laatste teken uit de string te verwijderen.
VerwijderLastCharacter3.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); } }
Uitgang:
Googl
Reguliere expressie gebruiken
Wij kunnen ook gebruik maken van de reguliere expressie om het laatste teken uit de tekenreeks te verwijderen of te verwijderen. De klasse String levert de vervang alles() methode dat twee parameters parseert regex En vervanging van het type String. De methode vervangt de tekenreeks door de opgegeven overeenkomst.
Het retourneert de resulterende subtekenreeks.
Syntaxis:
public String replaceAll(String regex, String replacement)
Het gooit PatroonSyntaxisUitzondering als de syntaxis van de reguliere expressie ongeldig is.
VerwijderLastCharacter4.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('.$', ''); } }
Uitgang:
Honesty is the best polic
Het eerste en laatste teken van elk woord in een string verwijderen
We kunnen ook het eerste en laatste teken van elk woord in een string verwijderen of verwijderen. Om het eerste en laatste teken te verwijderen, gebruiken we de volgende stappen:
- Splits (breek) de string op basis van de spatie.
- Voer voor elk woord een lus uit van de eerste tot de laatste letter.
- Identificeer het eerste en laatste teken van elk woord.
- Verwijder nu het eerste en laatste teken van elk woord.
VerwijderFirstAndLastCharacter.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)); } }
Uitgang:
Javatpoint is the best educational website avatpoin h es ducationa ebsit
In de bovenstaande uitvoer zien we dat het eerste en laatste teken uit elk woord van de string is verwijderd. Het woord 'is' is volledig verwijderd omdat het slechts twee tekens bevat.