Java Program to Extract a Single Quote Enclosed String From a Larger String using Regex

05 Oct, 2021
Problem Statement: Given a String extract the substring enclosed in single quotes (‘) using Java Regex. 
Java regex is an API for pattern matching with regular expression. ‘java.util.regex’ is a class used for CharSequence< interface in order to support matching against characters from a wide variety of input sources. It is not allowed to pass a null argument to any classes or interfaces as it will throw out an exception called <. Hence, it can be concluded ‘java.util.regex’ is containing Interface and classes as follows:
InterfaceMatchResult: The result of a match operation
MatchResult: The result of a match operation
MatchResult: The result of a match operation
ClassesMatcher: A engine that performs match operations on a character sequence by interpreting a Pattern.Pattern: A compiled representation of a regular expression.
Matcher: A engine that performs match operations on a character sequence by interpreting a Pattern.Pattern: A compiled representation of a regular expression.
Matcher: A engine that performs match operations on a character sequence by interpreting a Pattern.
Pattern: A compiled representation of a regular expression.
Illustration:
Input  : "Out of this String required only is 'Geeks for Geeks' only'"
Output : Geeks for Geeks
 
Input  : "The data wanted is'Java Regex'"
Output : Java Regex
Example
Java
// Java program to demonstrate extracting// substring enclosed in single quotes  // Importing Matcher and Pattern class// from regex class of java.util package// Importing input output classesimport java.io.*;import java.util.regex.Matcher;import java.util.regex.Pattern;  // Classpublic class GFG {      // Main driver method    public static void main(String[] args)    {        // Custom input        String string1            = "Out of this String I want 'Geeks for Geeks' only";          // Desired custom output        String string2            = "The data that I want is'Java Regex'";          // Paranthesis indicate it is a group and signifies        // it can have substring enclosed in single quote        Pattern p = Pattern.compile(".*'([^']*)'.*");          // This method returns a pattern object          // Calling matcher() method of pattern object        // and passing input character sequence        Matcher m1 = p.matcher(string1);        Matcher m2 = p.matcher(string2);          // Printing complete entered string 1        System.out.println("String to be extracted : "                           + string1);          // Condition check using matches() method which        // looks out for content if any in single quote        if (m1.matches()) {              // Print the required sub-string            System.out.println("Extracted part         : "                               + m1.group(1));        }          // New line        System.out.println();          // Printing complete entered string 2        System.out.println("String to be extracted : "                           + string2);          // Condition check using matches() method which        // looks out for content if any in single quote        if (m2.matches()) {              // Print the required sub-string            System.out.println("Extracted part         : "                               + m2.group(1));        }    }}
String to be extracted : Out of this String I want 'Geeks for Geeks' only
Extracted part         : Geeks for Geeks

String to be extracted : The data that I want is'Java Regex'
Extracted part         : Java Regex
gabaa406
java-regular-expression
Java-String-Programs
Technical Scripter 2020
Java
Java Programs
Technical Scripter
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.