$show=/label

Java 8 Streams - Removing A Character From String

SHARE:

A quick guide to remove the given character from string in java 8.

1. Overview

In this tutorial, We'll learn how to remove the specific character from the given string in java with java 8 streams api.

This problem can be solved in many ways but we will solve in most used 4 ways.
Java 8 Streams - Removing A Character From String


2. Removing A Character From String Using replaceAll()


First, we use the replaceAll() method from String class. This method takes the regex and string to be replaced with the regex matched substring.

Look at the following example.
package com.javaprogramto.programs.strings.remove.character;

public class StringRemoveCharacterExample {

	public static void main(String[] args) {

		String input = "hello 0world 00";

		String output = input.replaceAll("0", "");
		
		System.out.println("Input string 1 : "+input);
		System.out.println("Output string after removing the + symbol : "+output);
	}
}

Output:
Input string 1 : hello 0world 00
Output string after removing the + symbol : hello world 
The above code does not work for the special characters. If input string contains any one of these characters(<, (, [, {, \, ^, -, =, $, !, |, ], }, ), ?, *, +, ., >) then it will throw PatternSyntaxException.
Exception in thread "main" java.util.regex.PatternSyntaxException: Dangling meta character '+' near index 0
+
^
	at java.base/java.util.regex.Pattern.error(Pattern.java:2029)
	at java.base/java.util.regex.Pattern.sequence(Pattern.java:2204)
	at java.base/java.util.regex.Pattern.expr(Pattern.java:2070)
	at java.base/java.util.regex.Pattern.compile(Pattern.java:1784)
	at java.base/java.util.regex.Pattern.<init>(Pattern.java:1431)
	at java.base/java.util.regex.Pattern.compile(Pattern.java:1070)
	at java.base/java.lang.String.replaceAll(String.java:2141)
	at com.javaprogramto.programs.strings.remove.character.StringRemoveCharacterExample.main(StringRemoveCharacterExample.java:9)

To handle the special escape characters, we need to pass the regex pattern to Pattern.quote() method. This method converts into the literal pattern matching string.
package com.javaprogramto.programs.strings.remove.character;

import java.util.regex.Pattern;

public class StringRemoveCharacterExample2 {

	public static void main(String[] args) {

		String input = "hello +world ++";

		String output = input.replaceAll(Pattern.quote("+"), "");
		
		System.out.println("Input string 1 : "+input);
		System.out.println("Output string after removing the + symbol : "+output);
	}
}


Output:
Input string 1 : hello +world ++
Output string after removing the + symbol : hello world 

3. Removing A Character From String Using StringBuilder


Next, let us look at the another approach to solve this problem using StringBuilder.

Here, we need to iterate the string character over the for loop and compare each of them with the character to remove. If the current character is not matched to the removal character then add the current char to the StringBuilder using append() method.


The example code is below.
package com.javaprogramto.programs.strings.remove.character;

public class StringRemoveCharacterExample3 {

	public static void main(String[] args) {

		String input = "hello +world ++";
		char removalCh = '+';

		char[] chars = input.toCharArray();

		StringBuilder builder = new StringBuilder();

		for (char ch : chars) {

			if (ch != removalCh) {
				builder.append(ch);
			}

		}

		System.out.println("Input string 1 : " + input);
		System.out.println("Output string after removing the + symbol : " + builder.toString());
	}
}
Output:
Input string 1 : hello +world ++
Output string after removing the + symbol : hello world 

This program works for all escape characters also without any runtime exceptions.

4. Java 8 Streams - Removing A Character From String


Next solution is in java 8 using stream api methods.

Java 8 example:
package com.javaprogramto.programs.strings.remove.character;

import java.util.stream.Collectors;

public class StringRemoveCharacterExample4 {

	public static void main(String[] args) {

		String input = "hello +world ++";
		char removalCh = '+';

		String output = input.chars()
							.filter(ch -> ch != removalCh)
							.mapToObj(ch -> String.valueOf(ch))
							.collect(Collectors.joining());

		System.out.println("Input string 1 : " + input);
		System.out.println("Output string after removing the + symbol : " + output);
	}
}

If you want to remove the surrogate pairs then use codepoints() instead of chars() method and compare the codepoints rather than character.

5. Java Removing A Character From String Using Apache Commons


As of now, all examples shown are based on the java api but apache commons lang api has builtin utility class StringUtils.

Use StringUtils.remove() method to remove the given character from the string.

Example:
package com.javaprogramto.programs.strings.remove.character;

import org.apache.commons.lang3.StringUtils;

public class StringRemoveCharacterExample5 {

	public static void main(String[] args) {

		String input = "hello +world ++";
		char removalCh = '+';

		String output = StringUtils.remove(input, removalCh);

		System.out.println("Input string 1 : " + input);
		System.out.println("Output string after removing the + symbol : " + output);
	}
}

6. Conclusion


In this article, we've seen how to delete or remove the character from the string in java 8 and using third party api's.


COMMENTS

BLOGGER

About Us

Author: Venkatesh - I love to learn and share the technical stuff.
Name

accumulo,1,ActiveMQ,2,Adsense,1,API,37,ArrayList,18,Arrays,24,Bean Creation,3,Bean Scopes,1,BiConsumer,1,Blogger Tips,1,Books,1,C Programming,1,Collection,8,Collections,37,Collector,1,Command Line,1,Comparator,1,Compile Errors,1,Configurations,7,Constants,1,Control Statements,8,Conversions,6,Core Java,149,Corona India,1,Create,2,CSS,1,Date,3,Date Time API,38,Dictionary,1,Difference,2,Download,1,Eclipse,3,Efficiently,1,Error,1,Errors,1,Exceptions,8,Fast,1,Files,17,Float,1,Font,1,Form,1,Freshers,1,Function,3,Functional Interface,2,Garbage Collector,1,Generics,4,Git,9,Grant,1,Grep,1,HashMap,2,HomeBrew,2,HTML,2,HttpClient,2,Immutable,1,Installation,1,Interview Questions,6,Iterate,2,Jackson API,3,Java,32,Java 10,1,Java 11,6,Java 12,5,Java 13,2,Java 14,2,Java 8,128,Java 8 Difference,2,Java 8 Stream Conversions,4,java 8 Stream Examples,12,Java 9,1,Java Conversions,14,Java Design Patterns,1,Java Files,1,Java Program,3,Java Programs,114,Java Spark,1,java.lang,4,java.util. function,1,JavaScript,1,jQuery,1,Kotlin,11,Kotlin Conversions,6,Kotlin Programs,10,Lambda,2,lang,29,Leap Year,1,live updates,1,LocalDate,1,Logging,1,Mac OS,3,Math,1,Matrix,6,Maven,1,Method References,1,Mockito,1,MongoDB,3,New Features,1,Operations,1,Optional,6,Oracle,5,Oracle 18C,1,Partition,1,Patterns,1,Programs,1,Property,1,Python,2,Quarkus,1,Read,1,Real Time,1,Recursion,2,Remove,2,Rest API,1,Schedules,1,Serialization,1,Servlet,2,Sort,1,Sorting Techniques,8,Spring,2,Spring Boot,23,Spring Email,1,Spring MVC,1,Streams,31,String,61,String Programs,28,String Revese,1,StringBuilder,1,Swing,1,System,1,Tags,1,Threads,11,Tomcat,1,Tomcat 8,1,Troubleshoot,26,Unix,3,Updates,3,util,5,While Loop,1,
ltr
item
JavaProgramTo.com: Java 8 Streams - Removing A Character From String
Java 8 Streams - Removing A Character From String
A quick guide to remove the given character from string in java 8.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-Fe1uUGyRLqcyvJezeKXncuGTHHo6m3dhDrl0loM8KjvwsDVJJ4QsfRyFatZvNu29t1FXutpP2CJ7B2AXH-k_V9g9bwRo-eKVbNJusRwI1UvTi9DslykgOLiO_mvog-Bq6FY0zGW51KY/w400-h296/Java+8+Streams+-+Removing+A+Character+From+String.png
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-Fe1uUGyRLqcyvJezeKXncuGTHHo6m3dhDrl0loM8KjvwsDVJJ4QsfRyFatZvNu29t1FXutpP2CJ7B2AXH-k_V9g9bwRo-eKVbNJusRwI1UvTi9DslykgOLiO_mvog-Bq6FY0zGW51KY/s72-w400-c-h296/Java+8+Streams+-+Removing+A+Character+From+String.png
JavaProgramTo.com
https://www.javaprogramto.com/2021/11/java-8-streams-removing-character-from.html
https://www.javaprogramto.com/
https://www.javaprogramto.com/
https://www.javaprogramto.com/2021/11/java-8-streams-removing-character-from.html
true
3124782013468838591
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share to a social network STEP 2: Click the link on your social network Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy Table of Content