Java 正則表示式中的子表示式 “(re)”


子表示式/元字元 “( )”對正則表示式進行分組,並記住匹配的文字。

示例 1

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
   public static void main( String args[] ) {
      String input = "Hello how are you welcome to Tutorialspoint";
      String regex = "H(ell|ow)";
      //Compiling the regular expression
      Pattern pattern = Pattern.compile(regex);
      //Retrieving the matcher object
      Matcher matcher = pattern.matcher(input);
      if(matcher.find()) {
         System.out.println("Match found");
      } else {
         System.out.println("Match not found");
      }
   }
}

輸出

Match found

示例 2

在以下示例中,我們嘗試匹配一個包含數字的句子 −

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class PatternExample {
   public static void main(String[] args) {
      System.out.println("Enter input string: ");
      Scanner sc = new Scanner(System.in);
      String input = sc.nextLine();
      //Regular expression using groups
      String regex = "(?:.*)(\d+)(.*)";
      //Creating a pattern object
      Pattern pattern = Pattern.compile(regex);
      //Creating a Matcher object
      Matcher matcher = pattern.matcher(input);
      boolean bool = matcher.matches();
      if(bool) {
         System.out.println("Match found");
      } else {
         System.out.println("Match not found");
      }
   }
}

輸出

Enter input string:
This is a 5363 test string
Match found

更新於: 19-11-2019

252 次瀏覽

開啟你的 職業生涯

完成課程獲得認證

開始學習
廣告