ホームページ >Java >&#&チュートリアル >Java で一般的に使用される正規表現構文と使用上のヒント

Java で一般的に使用される正規表現構文と使用上のヒント

PHPz
PHPzオリジナル
2024-01-09 18:26:12952ブラウズ

Java で一般的に使用される正規表現構文と使用上のヒント

Java 正規表現の一般的な文法と使用スキル

はじめに:
正規表現 (正規表現) は、文字列に対して簡単に使用できる強力なテキスト マッチング ツールです。検索、置換、検証。 Java の正規表現は、java.util.regex パッケージでサポートされています。この記事では、Java 正規表現の一般的な構文と使用テクニックを紹介し、具体的なコード例を示します。

  1. 共通構文
    1.1 文字クラス
    文字クラス (文字クラス) は、指定された文字グループの一致を表します。
  2. 文字クラスを表すには [] を使用します。たとえば、文字 a、b、c のいずれかと一致する [abc] などです。
  3. [^] を使用して否定します。たとえば、1 は、文字 a、b、c を除く任意の文字と一致することを意味します。
  4. - を使用して範囲を指定します ([a-z] など)。a から z までの小文字に一致します。

1.2 事前定義された文字クラス
事前定義された文字クラスは、一般的に使用されるいくつかの文字クラスの略称です。

  • d は、[0-9] に相当する任意の数値と一致することを意味します。
  • D は、数字以外の任意の文字と一致することを意味します。これは、2 と同等です。
  • w は、[a-zA-Z_0-9] に相当する任意の文字、数字、またはアンダースコアと一致することを意味します。
  • W は、文字、数字、アンダースコアを除く任意の文字と一致することを意味し、3 と同等です。
  • s は、スペース、タブ、改行などを含む任意の空白文字と一致することを意味します。
  • S は、空白文字を除く任意の文字と一致することを意味します。

1.3 修飾子
修飾子 (数量子) は、一致する文字の数を指定するために使用されます。

    • は、0 個以上の文字と一致することを意味します。
    • # は 1 つ以上の文字と一致することを意味します。
  • ? は、0 または 1 文字と一致することを意味します。
  • {n} は、n 個の文字に正確に一致することを意味します。たとえば、d{3} は、3 つの数字に正確に一致することを意味します。
  • {n,} は、少なくとも n 文字と一致することを意味します。
  • {n,m} は、n から m 個の文字に一致することを意味します。

1.4 エスケープ文字
エスケープ文字は、正規表現の特殊文字に使用されます。

  • ドット文字と一致させるには、. などの次の文字をエスケープします。
  • \ はスラッシュ文字と一致することを意味します。
  • はタブ文字の一致を意味します。
  • は改行文字の一致を意味します。
  • は、復帰文字と一致することを意味します。
  1. 使用上のヒント
    2.1 一致の検索
    Matcher クラスの find メソッドを使用して、一致を検索します。

    Pattern pattern = Pattern.compile("a.b");
    Matcher matcher = pattern.matcher("acb");
    if (matcher.find()) {
     System.out.println("找到匹配");
    } else {
     System.out.println("未找到匹配");
    }

2.2 一致の抽出
Matcher クラスのグループ メソッドを使用して、一致を抽出します。

Pattern pattern = Pattern.compile("\d+");
Matcher matcher = pattern.matcher("abc123def");
if (matcher.find()) {
    String match = matcher.group();
    System.out.println("提取到的匹配项为:" + match);
}

2.3 置換一致
String クラスの replaceAll メソッドを使用して、一致する項目を置換します。

String str = "abc123def";
str = str.replaceAll("\d+", "数字");
System.out.println("替换后的字符串为:" + str);

2.4 入力の確認
String クラスのmatchesメソッドを使用して、入力が指定された正規表現と一致するかどうかを確認します。

String input = "abc123";
if (input.matches("[a-z]+\d+")) {
    System.out.println("输入合法");
} else {
    System.out.println("输入非法");
}

結論:
この記事では、Java 正規表現の一般的な構文と使用法を紹介し、具体的なコード例を示します。正規表現の基本的な構文と使用スキルを学習して習得することで、文字列の検索、置換、検証をより効率的に行うことができます。この記事があなたの学習に役立つことを願っています。


  1. abc
  2. 0-9
  3. a-zA-Z_0-9
  4. #

以上がJava で一般的に使用される正規表現構文と使用上のヒントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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