java 正規表現にマッチした全ての文字列を置換する

  • 作成日 2022.10.08
  • 更新日 2022.10.27
  • java
java 正規表現にマッチした全ての文字列を置換する

javaで、正規表現にマッチした全ての文字列を置換する手順を記述してます。

環境

  • OS windows11 home
  • java 17.0.2

手順

正規表現にマッチした全ての文字列を置換するには、「Pattern.compile」と「replaceAll」を使用します。

Pattern p = Pattern.compile("文字列");

Matcher m1 = p.matcher("文字列");

m1.replaceAll("置換する文字列");

実際に、使用してみます。

import java.util.regex.*;

public class App {
    public static void main(String[] args) throws Exception {

        String reg = "[0-9]{3}"; // 3文字の2から9の半角数字

        Pattern p = Pattern.compile(reg);

        Matcher m1 = p.matcher("123abc123");

        System.out.println(m1.replaceAll("A")); // AabcA

        Matcher m2 = p.matcher("12345");

        System.out.println(m2.replaceAll("A")); // A45

        Matcher m3 = p.matcher("123456");

        System.out.println(m3.replaceAll("A")); // AA

    }
}

置換されていることが確認できます。