|
||||||||||||||||||||||
|
ホーム > Java の正規表現 (Regular Expression) > マッチした箇所の置換 マッチした箇所の置換前回の 「正規表現によるスプリット」に引き続き、知らないと面倒くさい、 知っていると簡単にできることの例として、正規表現による文字列の置換を紹介します。 正規表現による文字列の置換特定の文字列からマッチする箇所を探して、その場所を置換するという操作をしてみましょう。 次のコードをみてください。 import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegExpTest3 {
public static void main(String[] args) {
String s = "SN123 xyz SN456";
String patternString = "\\d+";
Pattern p = Pattern.compile(patternString);
Matcher m = p.matcher(s);
System.out.println(m.replaceAll("#"));
System.out.println(m.replaceFirst("#"));
}
}
実行結果は次の通り。 SN# xyz SN# SN# xyz SN456 元の文字列は "SN123 xyz SN456" で、パターン文字列は \d+ (ひとつ以上の数字) です。 従って、"SN123 xyz SN456" の "SN123 xyz SN456" の部分にマッチします。 replaceAll() メソッドではマッチする箇所全てを置換。replaceFirst() メソッドではマッチする最初の箇所だけを置換します。 従って、上の実行結果のようになります。 ホーム > Java の正規表現 (Regular Expression) > マッチした箇所の置換 |
|
© 2010 Java 入門 |
|||||||||||||||||||