# How to find the subsequence in an input sequence that matches the pattern required in Java Regular Expressions?

Java 8Object Oriented ProgrammingProgramming

The find() method finds the subsequence in an input sequence that matches the pattern required. This method is available in the Matcher class that is available in the java.util.regex package.

A program that demonstrates the method Matcher.find() in Java regular expressions is given as follows:

## Example

Live Demo

import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Demo {
public static void main(String args[]) {
Pattern p = Pattern.compile("Sun");
Matcher m = p.matcher("The Earth revolves around the Sun");
System.out.println("Subsequence: Sun");
System.out.println("Sequence: The Earth revolves around the Sun");
if (m.find())
System.out.println("\nSubsequence found");
else
}
}

## Output

Subsequence: Sun
Sequence: The Earth revolves around the Sun
Subsequence found

Now let us understand the above program.

The subsequence “Sun” is searched in the string sequence "The Earth revolves around the Sun". Then the find() method is used to find if the subsequence is in the input sequence and the required result is printed. A code snippet which demonstrates this is as follows:

Pattern p = Pattern.compile("Sun");
Matcher m = p.matcher("The Earth revolves around the Sun");
System.out.println("Subsequence: Sun" );
System.out.println("Sequence: The Earth revolves around the Sun" );
if (m.find())
System.out.println("\nSubsequence found");
else
System.out.println("\nSubsequence not found");
Published on 19-Feb-2019 07:16:30