
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Replacing All Matched Contents in Java Regular Expressions
Once you compile the required regular expression and retrieved the matcher object by passing the input string as a parameter to the matcher() method.
You can replace all the matched parts of the input string with another str4ing using the replaceAll() method of the Matcher class.
This method accepts a string (replacement string) and replaces all the matches in the input string with it and returns the result.
Example 1
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class ReplaceAll{ public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter input text: "); String input = sc.nextLine(); String regex = "\t+"; //Creating a pattern object Pattern pattern = Pattern.compile(regex); //Matching the compiled pattern in the String Matcher matcher = pattern.matcher(input); int count = 0; while (matcher.find()) { count++; } System.out.println("No.of matches: "+count); String result = matcher.replaceAll(" "); System.out.println("Result: "+result); } }
Output
Enter input text: sample text with tab spaces No.of matches: 4 Result: sample text with tab spaces
In the same way you can replace the first match using the replaceFirst() method of the Matcher class.
Example 2
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class ReplaceAll{ public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter input text: "); String input = sc.nextLine(); String regex = "\d"; //Creating a pattern object Pattern pattern = Pattern.compile(regex); //Matching the compiled pattern in the String Matcher matcher = pattern.matcher(input); int count = 0; while (matcher.find()) { count++; } System.out.println("No.of matches: "+count); String result = matcher.replaceFirst("#"); System.out.println("Result: "+result); } }
Output
Enter input text: test data 1 2 3 No.of matches: 3 Result: test data # 2 3
Advertisements