- Java Regex Tutorial
- Java Regex - Home
- Java Regex - Overview
- Java Regex - Capturing Groups
- Java Regex - MatchResult Interface
- Java Regex - Pattern Class
- Java Regex - Matcher Class
- PatternSyntaxException Class
- Java Regex Examples
- Java Regex - Characters
- Java Regex - Character Classes
- Predefined Character Classes
- POSIX Character Classes
- Java Regex - JAVA Character Classes
- Unicode Character Classes
- Java Regex - Boundary Matchers
- Java Regex - Greedy quantifiers
- Java Regex - Reluctant quantifiers
- Java Regex - Possessive quantifiers
- Java Regex - Logical Operators
- Java Regex Useful Resources
- Java Regex - Quick Guide
- Java Regex - Useful Resources
- Java Regex - Discussion
java.util.regex.Pattern.compile() Method
Description
The java.util.regex.Pattern.compile(String regex, int flags) method compiles the given regular expression into a pattern.
Declaration
Following is the declaration for java.util.regex.Pattern.compile(String regex, int flags) method.
public static Pattern compile(String regex, int flags)
Parameters
regex − The expression to be compiled.
flags − Match flags, a bit mask that may include CASE_INSENSITIVE, MULTILINE, DOTALL, UNICODE_CASE, CANON_EQ, UNIX_LINES, LITERAL, UNICODE_CHARACTER_CLASS and COMMENTS.
Exceptions
IllegalArgumentException − If bit values other than those corresponding to the defined match flags are set in flags.
PatternSyntaxException − If the expression's syntax is invalid.
Example
The following example shows the usage of java.util.regex.Pattern.compile(String regex, int flags) method.
package com.tutorialspoint; import java.util.regex.MatchResult; import java.util.regex.Matcher; import java.util.regex.Pattern; public class PatternDemo { private static final String REGEX = "(.*)(\\d+)(.*)?# 3 capturing groups"; private static final String INPUT = "This is a sample Text, 1234, with numbers in between."; public static void main(String[] args) { // create a pattern Pattern pattern = Pattern.compile(REGEX,Pattern.COMMENTS); // get a matcher object Matcher matcher = pattern.matcher(INPUT); if(matcher.find()) { //get the MatchResult Object MatchResult result = matcher.toMatchResult(); //Prints the offset after the last character matched. System.out.println("First Capturing Group - Match String end(): "+result.end()); } } }
Let us compile and run the above program, this will produce the following result −
First Capturing Group - Match String end(): 53