Home >Java >javaTutorial >Java Program Example: Demonstrates Escape Characters in Regular Expressions
Here, we will demonstrate the escape characters in Regex through a Java program. Before we dive into this topic, let's familiarize ourselves with the terms "escape characters" and "regular expressions."
It is the abbreviation of a regular expression. It is an API that allows users to define string patterns for finding, modifying and editing strings. Regular expressions are often used to define restricted string fields, such as email authentication and passwords. The java.util.regex package contains regular expressions.
When a character is preceded by a backslash (\), it includes numbers, letters, and punctuation marks. The compiler treats these characters differently, and such characters are called escape characters.
Some examples include:
\n - In this example, it is used to add a new line to the text.
\’ - It is used to add a single quote character to the text here.
In order to match special characters in regular expressions, such as dot (.), pound sign (#), etc., these characters that have special meaning to regular expressions must be escaped.
For example, if the dot (.) is not escaped in a regular expression, it will match any character and produce unclear results.
In Java Regex, characters can be escaped in two different ways, which we will examine in detail below.
Use \Q and \E to escape
Use backslash (\) to escape
To escape characters, we can use the Q and E escape sequences.
The escape sequence starts with the letter Q and ends with the letter E.
Between the letters Q and E, all characters are escaped.
is often used to escape large numbers of characters.
The following program demonstrates how using the dot escape character in a regular expression works.
<span style="font-size: 13.125px;">// Java Program to demonstrate how to escape characters in Java // Regex Using \Q and \E for escaping import java.io.*; import java.util.regex.*; //creation of a class named Regexeg1 public class Regexeg1 { // Main method public static void main(String[] args) { // providing two strings as inputs String s1 = "Tutorials.point"; String s2 = "Tutorialspoint"; //creation of an object of Pattern class with dot escaped </span>Pattern p1 = Pattern.compile("<span>\</span>\Q.<span>\</span>\E"); //creation of an object of Pattern class without escaping the dot Pattern p2 = Pattern.compile("."); // Matchers for every combination of patterns and strings Matcher m1 = p1.matcher(s1); Matcher m2 = p1.matcher(s2); Matcher m3 = p2.matcher(s1); Matcher m4 = p2.matcher(s2); // find whether p1 and p2 match and display the Boolean value as a result System.out.println("p1 matches s1: " + m1.find()); System.out.println("p1 matches s2: " + m2.find()); System.out.println("p2 matches s1: " + m3.find()); System.out.println("p2 matches s2: " + m4.find()); } } </span>
p1 matches s1: true p1 matches s2: false p2 matches s1: true p2 matches s2: true
In the above Java program, it shows the use of \Q and \E in regular expressions to escape a string of characters.
Created two input strings, s1 and s2, and two Pattern objects, p1 and p2. Among them, p1 uses \Q and \E to escape the dot character ".", while p2 does not escape. Point character.
Four Matcher objects are created, namely m1, m2, m3 and m4, which are used to match the input string with the Pattern object.
Finally, the program displays the Boolean value true if the Pattern objects p1 and p2 match the input strings s1 and s2 using the Matcher objects m1, m2, m3 and m4, and if they do not match, the Boolean value false.
Backslash can be used to escape characters.
Since the backslash character is a character of its own, we need two backslashes.
The characters will then be escaped.
It is often used to escape characters at the end of a string.
The Chinese translation ofThe following program demonstrates how escaping characters in regular expressions using backslash (//) works.
// Java Program to demonstrate how to escape characters in Java // Regex using backslash (\) for escaping import java.io.*; import java.util.regex.*; //creation of a class named Regexeg2 public class Regexeg2 { public static void main (String[] args) { // providing two strings as inputs String s1="Tutorials.point"; String s2="Tutorialspoint"; //creation of an object of Pattern class with dot escaped Pattern p1=Pattern.compile("<span>\</span>\."); //creation of an object of Pattern class without dot escaped Pattern p2=Pattern.compile("."); //Four matchers for each pattern string combination Matcher m1=p1.matcher(s1); Matcher m2=p1.matcher(s2); Matcher m3=p2.matcher(s1); Matcher m4=p2.matcher(s2); // find whether p1 and p2 match and display the boolean value as a result System.out.println("p1 matches s1: "+m1.find()); System.out.println("p1 matches s2: "+m2.find()); System.out.println("p2 matches s1: "+m3.find()); System.out.println("p2 matches s2: "+m4.find()); } }
p1 matches s1: true p1 matches s2: false p2 matches s1: true p2 matches s2: true
In the above Java code, backslashes are used to match special characters in the string, demonstrating the use of escape characters in regular expressions.
Here, two input strings are created, namely s1 and s2, and two Pattern objects p1 and p2, where p1 escapes the dot character "." through backslash, while p2 does not escape the dot character. .
Then four Matcher objects are created, namely m1, m2, m3 and m4, which are used to match the input string with the Pattern object.
Finally, the program uses Matcher objects m1, m2, m3 and m4 to match the input strings s1 and s2. If the Pattern objects p1 and p2 match the input string, the Boolean value true is displayed, and if they do not match, the Boolean value true is displayed. boolean false.
This article explains how to escape characters in regular expressions. The article starts by discussing the terms regular expressions and escape characters, and introduces the two methods and their implementation to have a clear understanding of this topic.
The above is the detailed content of Java Program Example: Demonstrates Escape Characters in Regular Expressions. For more information, please follow other related articles on the PHP Chinese website!