ホームページ  >  記事  >  Java  >  Java 正規表現論理演算子

Java 正規表現論理演算子

WBOY
WBOY転載
2023-08-30 09:45:06911ブラウズ

Java 正規表現論理演算子

#Java 正規表現は、-

  • XY: X の後に Y

  • # という 3 つの論理演算子をサポートします。 ##X|Y: X または Y
  • #(X): キャプチャ グループ。
  • ##XXY: X の後に Y

    # が続きます。 ##これは、単純に 2 つの連続する単一文字と一致します。

ライブ デモ

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
   public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter input text: ");
      String input = sc.nextLine();
      String regex = "am";
      //Creating a pattern object
      Pattern pattern = Pattern.compile(regex);
      //Matching the compiled pattern in the String
      Matcher matcher = pattern.matcher(input);
      if (matcher.find()) {
         System.out.println("Match occurred");
      } else {
         System.out.println("Match not occurred");
      }
   }
}

出力 1

の中国語訳は次のとおりです:

出力 1

Enter input text:
sample text
Match occurred

Output 2

Enter input text:
hello how are you
Match not occurred
#XX|Y

これは、「|」を囲む 2 つの式/文字のいずれかと一致します。

Example

Liveデモ

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 pattern = Pattern.compile(regex);
      Matcher matcher = pattern.matcher(input);
      int count = 0;
      while(matcher.find()) {
         count++;
      }
      System.out.println("Number of matches: "+count);
   }
}

出力

Number of matches: 2

(X): キャプチャ グループ

キャプチャ グループを使用すると、複数の文字を 1 つの単位として扱うことができます。これらの文字を一対のかっこで囲むだけです。

リアルタイム デモンストレーション

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class CapturingGroups {
   public static void main( String args[] ) {
      System.out.println("Enter input text");
      Scanner sc = new Scanner(System.in);
      String input = sc.nextLine();
      String regex = "(.*)(\d+)(.*)";
      //Create a Pattern object
      Pattern pattern = Pattern.compile(regex);
      //Now create matcher object.
      Matcher matcher = pattern.matcher(input);
      if (matcher.find( )) {
         System.out.println("Found value: " + matcher.group(0) );
         System.out.println("Found value: " + matcher.group(1) );
         System.out.println("Found value: " + matcher.group(2) );
         System.out.println("Found value: " + matcher.group(3) );
      } else {
         System.out.println("NO MATCH");
      }
   }
}

出力

Enter input text
sample data with 1234 (digits) in middle
Found value: sample data with 1234 (digits) in middle
Found value: sample data with 123
Found value: 4
Found value: (digits) in middle

以上がJava 正規表現論理演算子の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。