Regular Expression "^" (caret) Metacharacter in Java



The subexpression/metacharacter “^” matches the beginning of a line. If you use this in a regular expression, it matches the sentence succeeding it in the input string.

Example 1

import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexExample {    public static void main( String args[] ) {       String regex = "^Hi how are you";       String input = "Hi 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: 1

Example 2

The following Java program accepts 5 strings from the user and prints the strings starting with a digit.

import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class StartingwithDigit {    public static void main( String args[] ) {       String regex = "^[0-9].*$";       Scanner sc = new Scanner(System.in);       System.out.println("Enter 5 input strings: ");       String input[] = new String[5]; Regular expressions - Answers       for (int i=0; i<5; i++) {          input[i] = sc.nextLine();       }       //Creating a Pattern object       Pattern p = Pattern.compile(regex);       System.out.println("Strings starting with digits: ");       for(int i=0; i<5;i++) {          //Creating a Matcher object          Matcher m = p.matcher(input[i]);          if(m.matches()) {             System.out.println(m.group());          }       }    } }

Output

Enter 5 input strings: sample string 1 sample string 2 11 sample string 3 22 sample string 4 43534 56353 636 Strings starting with digits: 11 sample string 3 22 sample string 4 43534 56353 636
Updated on: 2019-11-18T10:12:52+05:30

671 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements