Home > Java > javaTutorial > Pattern classes in Java

Pattern classes in Java

PHPz
Release: 2023-08-30 09:01:02
forward
655 people have browsed it

Pattern classes in Java

The Pattern class represents a compiled version of a regular expression pattern. The Pattern class is located in the java.util.regex package. This class has various methods for various operations such as matching, splitting, searching, etc. In order to create a schema object, use the compile method.

grammar

public static Pattern compile(String regex)
Copy after login

The regex here represents a regular expression, which is a string. To compile it we use this method. Additionally, this compiled object can be used to match patterns using the Matcher method.

algorithm

To compile and match patterns, follow these steps -

  • Step 1 - Initialize the regular expression pattern with a string.

  • Step 2 - Now, compile the schema using the compile method.

  • Step 3 - Define the input string to match the pattern.

  • Step 4 - Create a Matcher object and apply the pattern to the input string.

  • Step 5 − Use the Matcher method to perform various operations

grammar

public class Regex {
   public static void main(String[] args) {
      String pattern = "String1";
      Pattern compiledPattern = Pattern.compile(pattern);
      String input = "Strin2";
      Matcher matcher = compiledPattern.matcher(input);
      if (matcher.find()) {
         System.out.println("Match found: " + matcher.group(0));
         System.out.println("Captured group: " + matcher.group(1));
      } else {
         System.out.println("No match found.");
      }
   }
}
Copy after login

Method 1: Use matches() method

This method involves using the matches() method.

Example

import java.util.regex.Pattern;

public class MatchThePattern {
   public static void main(String[] args) {
      String pattern = "Hello (\w+)";
      String input = "Hello World"; // Add the input string to be matched

      boolean letsMatch = Pattern.matches(pattern, input);
      if (letsMatch) {
         System.out.println("Pattern matched.");
      } else {
         System.out.println("Pattern not matched.");
      }
   }
}
Copy after login

Output

Pattern matched.
Copy after login

illustrate

By passing two string inputs as parameters to the matches method, we can successfully match the two string patterns in the above code.

Method 2: Use find() method

The find() method returns a Boolean type and finds expressions that match the pattern. The following is a code example -

Example

In this example, we will use the find() method to demonstrate the second method.

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class LetsFindPattern {
   public static void main(String[] args) {
      String pattern = "\b\d+\b";
      String input = "The price is 100 dollars for 3 items.";
      Pattern compiledPattern = Pattern.compile(pattern);
      Matcher matcher = compiledPattern.matcher(input);
      while (matcher.find()) {
         System.out.println("Match found: " + matcher.group());
      }
   }
}
Copy after login

Output

Match found: 100
Match found: 3
Copy after login

Comparison between Method 1 and Method 2

standard

method 1

Method Two

type

String

String

method

Boolean matching (string regular expression)

Boolean search()

Method logic

If the match is successful, return the pattern

Return matching pattern

in conclusion

Regular expressions are used to match patterns. The above methods are examples of actions you should take when matching patterns. We also demonstrate these methods with two worked examples, demonstrating their power and versatility. By understanding these methods and their use cases, you can use regular expressions to efficiently find matching patterns

The above is the detailed content of Pattern classes in Java. For more information, please follow other related articles on the PHP Chinese website!

source:tutorialspoint.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template