Regular Expression a|b Metacharacter in Java


The subexpression/metacharacter “a| b” matches either a or b.

Example 1

import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexExample {
   public static void main( String args[] ) {
      String regex = "Hello|welcome";
      String input = "Hello how are you welcome to Tutorialspoint";
      Pattern p = Pattern.compile(regex);
      Matcher m = p.matcher(input);
      int count = 0;
      while(m.find()) {
         count++;
      }
      System.out.println("Number of matches: "+count);
   }
}

Output

Number of matches: 2

Example 2

The following Java program reads gender value from the user and, it only allows M (male), F(Female) or, O(Others).

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexExample {
   public static void main( String args[] ) {
      //Regular expression to match M or, F or, O
      String regex = "M|F|O";
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter students gender:");
      String name = sc.nextLine();
      Pattern p = Pattern.compile(regex);
      Matcher m = p.matcher(name);
      if(m.matches()) {
         System.out.println("All OK");
      } else {
         System.out.println("Wrong Input");
      }
   }
}

Output 1

Enter students gender:
M
All OK

Output 2

Enter students gender:
male
Wrong Input

Updated on: 19-Nov-2019

258 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements