Java 文字列を切り出す(substring)

Javaの文字列を切り出すサンプルです。

目次

substring+引数2つ 文字列の一部を切り出す
substring+引数1つ 文字列の途中から最後までを切り出す
substring+length 文字列の後ろから切り出す

文字列の一部を切り出す

public String substring(int 開始位置,int 終了位置)
  • 1つめの引数の開始位置から2つめの引数の終了位置の前にある文字までを返します。
  • 最初の1文字目の位置は0です。

文字列の一部を切り出すサンプルです。

package test1;
 
public class Test1 {
	public static void main(String[] args) {
 
		String a = "あいうえお";

		System.out.println(a.substring(0, 1)); // あ
		System.out.println(a.substring(1, 2)); // い
		System.out.println(a.substring(2, 3)); // う		
		
		System.out.println(a.substring(0, 3)); // あいう
		System.out.println(a.substring(2, 4)); // うえ
		
		String b = "abcde";
		System.out.println(b.substring(0, 1)); // a
		System.out.println(b.substring(1, 2)); // b
	}
}

8~10行目は、指定の位置から1文字取得しています。
12行目は、最初の文字「あ」から3文字取得しています。
13行目は、途中にある文字の「う」から2文字取得しています。
15行目は、半角文字の場合です

文字列の途中から最後までを切り出す

public String substring (int 開始位置)
  • 1つめの引数の開始位置から最後までの文字を返します。

文字列の途中から最後までを切り出すサンプルです。

package test1;
 
public class Test1 {
	public static void main(String[] args) {
 
		String a = "あいうえお";
 
		System.out.println(a.substring(1)); // いうえお
		System.out.println(a.substring(2)); // うえお
		System.out.println(a.substring(3)); // えお
		System.out.println(a.substring(4)); // お
	}
}

指定した位置の文字から最後の文字まで取得しています。

文字列の後ろから切り出す

文字列の後ろから切り出すサンプルです。lengthメソッドを使用します。

package test1;
 
public class Test1 {
	public static void main(String[] args) {
 
		String a = "あいうえお";
 
		System.out.println(a.substring(a.length()-1)); // お
		System.out.println(a.substring(a.length()-2)); // えお
		System.out.println(a.substring(a.length()-3)); // うえお
	}
}

8~10行目は、lengthメソッドで文字列の長さを取得し、そこから引くことで後ろから文字列を取得しています。

以下はJava8 API仕様のsubstringメソッド(引数2つ)のリンクです。
https://docs.oracle.com/javase/jp/8/docs/api/java/lang/String.html#substring-int-int-

関連の記事

Java 文字列を置換するサンプル(replace)
Java split 文字列を分割して配列にする
Java 文字列の文字の位置を取得するサンプル(indexOfとlastIndexOf)
Java 文字列の始まり/終わりを確認(startsWith/endsWith)

△上に戻る