hacker rank java 22th problem solution(java regex 2)

22.  java regex 2

 import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class DuplicateWords {

    public static void main(String[] args) {

        String regex = "\\b(\\w+)(\\W+\\1\\b)+";
        Pattern p = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);

        Scanner in = new Scanner(System.in);
        int numSentences = Integer.parseInt(in.nextLine());
       
        while (numSentences-- > 0) {
            String input = in.nextLine();
           
            Matcher m = p.matcher(input);
           
            // Check for subsequences of input that match the compiled pattern
            while (m.find()) {
                input = input.replaceAll(m.group(), m.group(1));
            }
           
            // Prints the modified sentence.
            System.out.println(input);
        }
       
        in.close();
    }
}



Compiler Message
Success
Input (stdin)Download
5
Goodbye bye bye world world world
Sam went went to to to his business
Reya is is the the best player in eye eye game
in inthe
Hello hello Ab aB
Expected OutputDownload
Goodbye bye world
Sam went to his business
Reya is the best player in eye game
in inthe
Hello Ab


-Sundaram Dubey

Comments

Popular posts from this blog

Amazon Web Services

Google Code-In mentorship experience :)

Hacker Rank all java and python problem solutions