
Javaでの文字列切り出しを紹介|substringメソッドを使用
目次
Javaのsubstringで文字列を切り出す方法
今回は、Javaのsubstringメソッドで文字列を切り出す方法について説明します。substringメソッドを使えば、文字列の右からN文字切り出したり、右からN文字切り出したりすることができます。
Javaのsubstringメソッドで文字列を切り出す方法に興味のある方はぜひご覧ください。
左からN文字切り出し
Javaでは、substringメソッドを利用して、文字列の左からN文字切り出せます。
実際のソースコードを見てみましょう。
1 2 3 4 5 6 |
String str = "あいうえお"; // 左から3文字分の文字列切り出し String result = str.substring(0, 3); System.out.println(result); // あいう |
実行結果は以下のようになります。
1 |
あいう |
substringメソッドは以下のように使用します。
substring(開始位置, 終了位置);
開始位置および終了位置は文字列のインデックスです。インデックス0は1文字目を意味します。
substring(0, 3)とすることで、1文字目から3文字目までを切り出すことができます。
また、以下のように範囲外の引数を指定すると、StringIndexOutOfBoundsExceptionが発生します。
1 2 3 4 |
String str = "あいうえお"; String result = str.substring(0, 10); // StringIndexOutOfBoundsException |
範囲外の位置を指定しないように注意しましょう。
このように、Javaではsubstringメソッドを利用して、文字列の左からN文字切り出せます。
左からN文字以降切り出し
Javaでは、文字列の左からN文字以降を切り出せます。
実際のソースコードを見てみましょう。
1 2 3 4 5 6 |
String str = "あいうえお"; // 左から4文字目以降の文字列切り出し String result = str.substring(3); System.out.println(result); // えお |
実行結果は以下のようになります。
1 |
えお |
substringメソッドの第2引数を省略すると、開始位置以降の文字列を切り出せます。
このように、Javaでは文字列の左からN文字以降を切り出せます。
右からN文字切り出し
Javaでは、文字列の右からN文字切り出せます。
実際のソースコードを見てみましょう。
1 2 3 4 5 6 |
String str = "あいうえお"; // 右から3文字分の文字列切り出し String result = str.substring(str.length() -3); System.out.println(result); // うえお |
実行結果は以下のようになります。
1 |
うえお |
lengthメソッドで文字列長を取得できます。開始位置を”文字列長-N”とすることで、右からN文字分の文字列を切り出せます。
このように、Javaでは文字列の右からN文字切り出せます。
中ほどからN文字切り出し
Javaでは、文字列の中ほどからN文字切り出せます。
実際のソースコードを見てみましょう。
1 2 3 4 5 6 |
String str = "あいうえお"; // 中ほどから3文字分の文字列切り出し String result = str.substring(1, 4); System.out.println(result); // いうえ |
実行結果は以下のようになります。
1 |
いうえ |
このように、Javaでは文字列の中ほどからN文字切り出せます。
左からN文字目を切り出し
Javaでは、文字列の左からN文字目を切り出せます。
実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 |
String str = "あいうえお"; // 左から3文字目を切り出し String result1 = str.substring(2, 3); char result2 = str.charAt(2); System.out.println(result1); // う System.out.println(result2); // う |
実行結果は以下のようになります。
1 2 |
う う |
substringメソッドは開始位置と終了位置が引数なので、開始位置よりも1大きい値を終了位置に指定することで1文字分切り出せます。また、charAtメソッドを使用すれば、ダイレクトに1文字切り出せます。
このように、Javaでは文字列の左からN文字目を切り出せます。
右からN文字目を切り出し
Javaでは、文字列の右からN文字目を切り出せます。
実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 |
String str = "あいうえお"; // 右から2文字目を切り出し String result1 = str.substring(str.length() -2, str.length() -1); char result2 = str.charAt(str.length() -2); System.out.println(result1); // え System.out.println(result2); // え |
実行結果は以下のようになります。
1 2 |
え え |
このように、Javaでは文字列の右からN文字目を切り出せます。
指定した文字より後を切り出し
Javaでは、指定した文字より後の文字列を切り出せます。
実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
String str = "あいうえお"; // 指定文字が1文字の場合 int index1 = str.indexOf("う"); // 指定した文字より後を切り出し String result1 = str.substring(index1 + 1); // 指定文字が2文字の場合 int index2 = str.indexOf("うえ"); index2 += "うえ".length(); // 指定した文字より後を切り出し String result2 = str.substring(index2); System.out.println(result1); // えお System.out.println(result2); // お |
実行結果は以下のようになります。
1 2 |
えお お |
indexOfメソッドで指定文字のインデックスを特定し、substringメソッドの引数に指定します。
このように、Javaでは指定した文字より後の文字列を切り出せます。
指定した文字より前を切り出し
Javaでは、指定した文字より前の文字列を切り出せます。
実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
String str = "あいうえお"; // 指定文字が1文字の場合 int index1 = str.indexOf("う"); // 指定した文字より前を切り出し String result1 = str.substring(0, index1); // 指定文字が2文字の場合 int index2 = str.indexOf("うえ"); // 指定した文字より前を切り出し String result2 = str.substring(0, index2); System.out.println(result1); // あい System.out.println(result2); // あい |
実行結果は以下のようになります。
1 2 |
あい あい |
indexOfメソッドで指定文字のインデックスを特定し、substringメソッドの引数に指定します。
このように、Javaでは指定した文字より前の文字列を切り出せます。
まとめ
いかがでしたでしょうか。Javaでは、文字列操作メソッドを使用して、文字列の左からN文字切り出したり、右からN文字切り出したりすることができます。
ここでは、substringメソッドを使用した、文字列の切り出し方法について紹介しました。ぜひご自身でソースコードを書いて、理解を深めてください。