The java.util.regex package of java provides various classes to find particular patterns in character sequences. The pattern class of this package is a compiled representation of a regular expression.
To match a specific character from the given input string −
Get the input string.
This compile() method of this class accepts a string value representing a regular expression and an integer value representing a flag returns a Pattern object. Compile the regular expression bypassing −
The pattern matcher “[ ]” with required character in it ex: “[t]”.
The flag CASE_INSENSITIVE to ignore case.
The matcher() method of the Pattern class accepts an input string and returns a Matcher object. Create/Retrieve a matcher object using this method.
find() − Using the find() method of the Matcher the matches.
Example
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class CompileExample { public static void main( String args[] ) { //Reading string value Scanner sc = new Scanner(System.in); System.out.println("Enter input string"); String input = sc.nextLine(); //Regular expression to find digits String regex = "[t]"; //Compiling the regular expression Pattern pattern = Pattern.compile(regex, Pattern.CASE_INSENSITIVE); //Retrieving the matcher object Matcher matcher = pattern.matcher(input); int count = 0; while(matcher.find()) { count++; } System.out.println("Number of matches: "+count); } }
Output
Enter input string Tutorialspoint Number of matches: 3