Home  >  Article  >  Java  >  Java Program Example: Demonstrates Escape Characters in Regular Expressions

Java Program Example: Demonstrates Escape Characters in Regular Expressions

王林
王林forward
2023-09-19 09:01:03671browse

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."

Regular expression

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.

Escape characters

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.

Methods to escape characters

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

Method 1. Use Q and E 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.

Example 1

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>

Output

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.

Method 2. Use backslash (//) as the escape character

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 of

Example 2

is:

Example 2

The 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());
    }
}

Output

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!

Statement:
This article is reproduced at:tutorialspoint.com. If there is any infringement, please contact admin@php.cn delete