code up

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Java文字列置換 - replaceAllの拡張

Java言語における文字列系の小ネタ。

環境はJava6を前提。

StringクラスにreplaceAllという関数があるが、これは正規表現をベースに動作するため、判定文字列および置換文字列にエスケープが必要。かつ大文字と小文字は区別して置換する(大文字やら小文字やらをきちんと指定しないといけない)。

一気にそれを解決するメソッド。

/**
 * 正規表現ではなく文字列の置換を行う。大文字、小文字の区別をせずに置換する。
 * 
 * @param str 全体文字列
 * @param target 置換したい部分文字列
 * @param replacement targetを置き換える文字列
 * @return
 */
public static String replaceAll(String str, String target, String replacement) {
	return Pattern.compile(Pattern.quote(target), Pattern.CASE_INSENSITIVE).matcher(str).replaceAll(
			Matcher.quoteReplacement(replacement));
}
関連記事
タグ:Java
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。