Java String matches Method

The Java matches method tells whether the string matches the user-specified regular expression or not. Based on the result, it will return Boolean True or False.

The basic syntax of the string matches in Java Programming language is as shown below. The following matches method will accept the Regular expression as the argument and check whether the original string matches this expression or not.

public boolean matches(String regexp); // It will return boolean True or False 

//In order to use in program
String_Object.matches(String regexp);

Java String matches Example

In this program, we use the Java matches method to check whether this string is exactly matching with the user-specified expression or not.

package StringFunctions;

public class MatchMethod {
	public static void main(String[] args) {
		String str = "Learn Java at Tutorial Gateway";
		String str1 = "We are abc working at abc Company";
		String str2 = "We are abc working at abc Company";
		
		boolean bool1 = str1.matches("abc");
		boolean bool2 = str1.matches(str2);		
		boolean bool3 = str.matches("Learn Java(.*)");
		boolean bool4 = str.matches("(.*)Java(.*)");

		System.out.println("Does String str1 Matches with 'abc'? = " + bool1);
		System.out.println("Does String str1 Matches with str2? = " + bool2);
		System.out.println("Does String str1 Matches with RegExp? = " + bool3);
		System.out.println("Does String str1 Matches with RegExp? = " + bool4);
	}
}
Java String Matches Method 1

The following statement will call the public boolean matches (String regex) method to check whether the string str1 matches with “abc” or not. From the above screenshot, you can observe that it is returning False because they are not matching.

boolean bool1 = str1.matches("abc");

It will check whether the str equals “Learn (.*)” or not. It means the string should start with Learn, and it will accept anything after that.

boolean bool3 = str.matches("Learn Java(.*)");

The following statement will check whether the str matches with “(.*)” or not. It means the string must contain Java, and it will accept anything before or after the word.

boolean bool4 = str.matches("(.*)Java(.*)");

Lastly, we used the Java System.out.println statements will print the output.

Java String matches Example

In this Java program, We are going to ask the user to enter any word. Based on the user entered string value, this String Function will display the message.

package StringFunctions;
import java.util.Scanner;

public class MatchMethodex {
	private static Scanner sc;
	public static void main(String[] args) {
		sc = new Scanner(System.in);		
		System.out.println("Please Enter any word: ");
		String str = sc.nextLine();
		
		if (str.matches("(.*)team(.*)")) {
			System.out.println("Hey!! Welcome to Programming Language");
		}
		else {
			System.out.println("Goodbye Tutorial Gateway");
		}
	}
}
Please Enter any word: 
Searching for team functions
Hey!! Welcome to Programming Language

Let us enter a different word.

Please Enter any word: 
Search SQL server
Goodbye Tutorial Gateway

Within this Java matches method example, the following statement will ask the user to enter any word or string. Then we are going to assign the user entered value to str.

System.out.println("Please Enter any word: ");
String str = sc.nextLine();

Next, we used the If Else Statement to check whether the user entered string matches with “(.*)team (.*)” or not. It means the string must contain a team, and it will accept anything before or after the word.

  • If the statement inside the If Statement is True, System.out.println(“Hey!! Welcome to Programming Language”); statement printed.
  • Else System.out.println(“Goodbye to Tutorials”); statement printed.