ホームページ >Java >&#&チュートリアル >Java 正規表現の詳細な分析: 量指定子の構文、文字クラス、および境界マッチング

Java 正規表現の詳細な分析: 量指定子の構文、文字クラス、および境界マッチング

WBOY
WBOYオリジナル
2023-12-26 12:39:11585ブラウズ

Java 正規表現の詳細な分析: 量指定子の構文、文字クラス、および境界マッチング

Java 正規表現構文の詳細な説明: 量指定子、文字クラス、境界マッチング

正規表現は、Java の文字列マッチングと処理で広く使用されています。この記事では、正規表現における量指定子、文字クラス、境界一致について詳しく紹介し、具体的なコード例を示します。

1. Quantifier

Quantifier は、一致ルールの繰り返し数を指定するために使用されます。 Java で一般的に使用される量指定子は次のとおりです。

  1. *: 前の文字と 0 回以上一致します。
  2. : 前の文字と 1 回以上一致します。
  3. ?: 前の文字と 0 回または 1 回一致します。
  4. {n}: 前の文字と正確に n 回一致します。
  5. {n,}: 前の文字と少なくとも n 回一致します。
  6. {n,m}: 前の文字と少なくとも n 回、最大で m 回一致します。

以下は具体的な例です:

String str = "abcccdddeeeee";

String pattern1 = "c*";
System.out.println(str.matches(pattern1)); // 输出true

String pattern2 = "d+";
System.out.println(str.matches(pattern2)); // 输出true

String pattern3 = "e?";
System.out.println(str.matches(pattern3)); // 输出false

String pattern4 = "c{2}";
System.out.println(str.matches(pattern4)); // 输出false

String pattern5 = "c{3,}";
System.out.println(str.matches(pattern5)); // 输出true

String pattern6 = "c{2,4}";
System.out.println(str.matches(pattern6)); // 输出true

上記のコードの str は、繰り返されるさまざまな文字を含む文字列です。次に、いくつかの正規表現パターンが定義され、matches() メソッドを使用して照合されます。数量指定子に応じて、異なる一致結果が表示されます。

2. 文字クラス

文字クラスは、文字のコレクションを指定するために使用されます。 Java の文字クラスは通常、[] を使用して定義されます。文字クラスを定義するには、範囲、除外文字、事前定義文字を使用できます。

以下は具体的な例です:

String str = "abc123";

String pattern1 = "[a-c]";
System.out.println(str.matches(pattern1)); // 输出true

String pattern2 = "[0-9]";
System.out.println(str.matches(pattern2)); // 输出false

String pattern3 = "[a-c0-9]";
System.out.println(str.matches(pattern3)); // 输出true

String pattern4 = "[^a-z]";
System.out.println(str.matches(pattern4)); // 输出false

String pattern5 = "\d";
System.out.println(str.matches(pattern5)); // 输出false

String pattern6 = "\D";
System.out.println(str.matches(pattern6)); // 输出true

上記のコードの str は文字と数字を含む文字列です。次に、いくつかの正規表現パターンを定義し、matches() メソッドを使用して照合します。文字クラスに応じて、異なるマッチング結果が表示されます。

3. 境界マッチング

境界マッチングはマッチング位置を限定するために使用されます Java には次のような境界マッチング記号があります:

  1. ^: マッチング文字列開始位置。
  2. $: 文字列の終了位置と一致します。
  3. : 単語の境界を一致させます。
  4. B: 単語以外の境界と一致します。

以下は具体的な例です:

String str = "hello world";

String pattern1 = "^hello";
System.out.println(str.matches(pattern1)); // 输出true

String pattern2 = "world$";
System.out.println(str.matches(pattern2)); // 输出true

String pattern3 = "\bhello";
System.out.println(str.matches(pattern3)); // 输出true

String pattern4 = "\Bworld";
System.out.println(str.matches(pattern4)); // 输出false

上記のコードの str は文を含む文字列です。次に、いくつかの正規表現パターンを定義し、matches() メソッドを使用して照合します。境界一致シンボルに応じて、異なる一致結果が表示されます。

概要:

この記事では、Java 正規表現における量指定子、文字クラス、および境界一致を紹介し、具体的なコード例を示します。実際のプログラミングでは、正規表現は文字列のマッチングと処理を簡素化できる非常に便利なツールです。これらの正規表現の基本的な使用法をマスターすると、Java を使用して文字列をより効率的に処理できるようになります。

以上がJava 正規表現の詳細な分析: 量指定子の構文、文字クラス、および境界マッチングの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。