Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,948 questions

51,890 answers

573 users

How to use Pattern.compile() and Pattern.Matcher() to match groups and capture parts of string in Java

6 Answers

0 votes
package javaapplication1;

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

public class JavaApplication1 {

    public static void main(String[] args) {

        try {

            Pattern pattern = Pattern.compile("(\\d+)\\:(\\d+)");

            Matcher m = pattern.matcher("01234:56789");

            if (m.matches()) {
                String s1 = m.group(1);
                String s2 = m.group(2);

                System.out.println(s1);
                System.out.println(s2);
            }

        } catch (Exception e) {
            System.out.print(e.toString());
        }
    }
}

/*
             
run:
       
01234
56789
    
 */

 



answered Nov 24, 2016 by avibootz
0 votes
package javaapplication1;

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

public class JavaApplication1 {

    public static void main(String[] args) {

        try {

            Pattern pattern = Pattern.compile("(\\d+)\\:(\\d+)");

            Matcher m = pattern.matcher("0101010101:37");

            if (m.matches()) {
                String s1 = m.group(1);
                String s2 = m.group(2);

                System.out.println(s1);
                System.out.println(s2);
            }

        } catch (Exception e) {
            System.out.print(e.toString());
        }
    }
}

/*
             
run:
       
0101010101
37
    
 */

 



answered Nov 24, 2016 by avibootz
0 votes
package javaapplication1;

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

public class JavaApplication1 {

    public static void main(String[] args) {

        try {

            Pattern pattern = Pattern.compile("(\\d+)\\*(\\d+)");

            Matcher m = pattern.matcher("313131*999");

            if (m.matches()) {
                String s1 = m.group(1);
                String s2 = m.group(2);

                System.out.println(s1);
                System.out.println(s2);
            }

        } catch (Exception e) {
            System.out.print(e.toString());
        }
    }
}

/*
             
run:
       
313131
999
    
 */

 



answered Nov 24, 2016 by avibootz
0 votes
package javaapplication1;

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

public class JavaApplication1 {

    public static void main(String[] args) {

        try {

            Pattern pattern = Pattern.compile("(?<first>..)-(?<second>..)");
            Matcher m = pattern.matcher("2x-3y");

            if (m.matches()) {
                String s1 = m.group("first");
                String s2 = m.group("second");

                System.out.println(s1);
                System.out.println(s2);
            }

        } catch (Exception e) {
            System.out.print(e.toString());
        }
    }
}

/*
             
run:
       
2x
3y
    
 */

 



answered Nov 24, 2016 by avibootz
0 votes
package javaapplication1;

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

public class JavaApplication1 {

    public static void main(String[] args) {

        try {

            Pattern pattern = Pattern.compile("(?<one>..)-(?<two>..)");
            Matcher m = pattern.matcher("2x-4y");

            if (m.matches()) {
                String s1 = m.group("one");
                String s2 = m.group("two");

                System.out.println(s1);
                System.out.println(s2);
            }

        } catch (Exception e) {
            System.out.print(e.toString());
        }
    }
}

/*
             
run:
       
2x
4y
    
 */

 



answered Nov 24, 2016 by avibootz
0 votes
package javaapplication1;

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

public class JavaApplication1 {

    public static void main(String[] args) {

        try {

            Pattern pattern = Pattern.compile("(?<one>...)-(?<two>...)");
            Matcher m = pattern.matcher("3xy-7zq");

            if (m.matches()) {
                String s1 = m.group("one");
                String s2 = m.group("two");

                System.out.println(s1);
                System.out.println(s2);
            }

        } catch (Exception e) {
            System.out.print(e.toString());
        }
    }
}

/*
             
run:
       
3xy
7zq
    
 */

 



answered Nov 24, 2016 by avibootz

Related questions

...