Java
 Computer >> コンピューター >  >> プログラミング >> Java

例を使用したJavaのパターンcompile()メソッド


java.regexのパターンクラス packageは、正規表現をコンパイルしたものです。

compile() このクラスのメソッドは、正規表現を表す文字列値を受け入れ、Patternオブジェクトを返します。

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class CompileExample {
   public static void main( String args[] ) {
      //Reading string value
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter input string");
      String input = sc.nextLine();
      //Regular expression to find digits
      String regex = "(\\d)";
      //Compiling the regular expression
      Pattern pattern = Pattern.compile(regex);
      //Printing the regular expression
      System.out.println("Compiled regular expression: "+pattern.toString());
      //Retrieving the matcher object
      Matcher matcher = pattern.matcher(input);
      //verifying whether match occurred
      if(matcher.find()) {
         System.out.println("Given String contains digits");
      } else {
         System.out.println("Given String does not contain digits");
      }
   }
}

出力

Enter input string
hello my id is 1120KKA
Compiled regular expression: (\d)
Given String contains digits

このメソッドの別の変形は、フラグを表す整数値を受け入れます。各フラグはオプションの条件を指定します。たとえば、CASE_INSENSITIVEは、正規表現のコンパイル中に大文字と小文字を無視します。

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class CompileExample {
   public static void main( String args[] ) {
      //Compiling the regular expression
      Pattern pattern = Pattern.compile("[t]", Pattern.CASE_INSENSITIVE);
      //Retrieving the matcher object
      Matcher matcher = pattern.matcher("Tutorialspoint");
      int count = 0;
      while(matcher.find()) {
         count++;
      }
      System.out.println("Number of matches: "+count);
   }
}

出力

Enter input string
Tutorialspoint
Number of matches: 3

  1. 例を使用したJavaのパターンquote()メソッド

    java.util.regex javaのパッケージは、文字シーケンスの特定のパターンを見つけるためのさまざまなクラスを提供します。 このパッケージのパターンクラスは、正規表現のコンパイル済み表現です。 quote() このクラスのメソッドは文字列値を受け入れ、指定された文字列に一致するパターン文字列を返します。つまり、指定された文字列に追加のメタ文字とエスケープシーケンスが追加されます。とにかく、与えられた文字列の意味は影響を受けません。 例1 import java.util.Scanner; import java.util.regex.Matcher; import java.u

  2. 例を使用したJavaのパターンマッチャー()メソッド

    java.util.regex javaのパッケージは、文字シーケンスの特定のパターンを見つけるためのさまざまなクラスを提供します。 このパッケージのパターンクラスは、正規表現のコンパイル済み表現です。 matcher() このクラスのメソッドは、 CharSequenceのオブジェクトを受け入れます 入力文字列を表すクラスとは、指定された文字列を現在の(パターン)オブジェクトで表される正規表現に一致させるMatcherオブジェクトを返します。 例 import java.util.Scanner; import java.util.regex.Matcher; import java