【Java】後ろから2文字を削除する方法


Posted on 2022/4/8 at 23:50


substringメソッドで後ろから2文字削除する

		public static void main(String[] args) {
	substring("testaa");
}
private static void substring(String str) {
	System.out.println(str.substring(0, str.length()-2));
}
		

substringメソッドの第1引数は切り出し開始位置(1文字目が0)、第2引数が切り出し終了位置(終了位置の次の文字位置)となります。

「後ろから2文字削除する」=「1文字目から後ろから3文字目までを切り出す」ということなので、substringの第1引数は1文字目の「0」、 第2引数は後ろ(str.length())から2文字目の位置であるstr.length()-2となります。

実行結果は「test」と出力されます。

正規表現で後ろから2文字削除する

		public static void main(String[] args) {
	regex("testaa");
}
private static void regex(String str) {
	Pattern p = Pattern.compile("^(.*).{2}$");
	Matcher m = p.matcher(str);
	if (m.find()) {
		System.out.println(m.group(1));
	}
}
		

この正規表現の意味は「文の先頭から後ろから任意の2文字までの文字列をグループ化する」となるため、グループ化した部分が今回取得したい部分となります。

m.group(1)でこの部分を取得できます。

実行結果は「test」と出力されます。

関連記事

【Java】ファイル名と拡張子名を抜き出す

FileクラスのgetFileNameメソッドからファイル名と拡張子名を抜き出すサンプルコード。