1. 概要

この短いチュートリアルでは、2つのアプローチを使用してJavaの文字列の最後の単語を取得する方法を学習します。

2. split()メソッドの使用

Stringクラスのsplit()インスタンスメソッドは、提供された正規表現に基づいて文字列を分割します。 これはオーバーロードされたメソッドであり、Stringの配列を返します。

入力String「バグのない日をお祈りします」について考えてみましょう。

文字列の最後の単語を取得する必要があるため、文字列を分割するための正規表現としてスペース( “”)を使用します。

split()メソッドを使用してこのS tring をトークン化し、最後のトークンを取得できます。これが結果になります。

public String getLastWordUsingSplit(String input) {
    String[] tokens = input.split(" ");
    return tokens[tokens.length - 1];
}

これにより、入力文字列の最後の単語である「日」が返されます。

入力Stringに単語が1つしかない場合、またはスペースがない場合、上記のメソッドは同じStringを返すことに注意してください。

3. substring()メソッドの使用

Stringクラスのsubstring()メソッドは、 Stringのサブストリングを返します。これはオーバーロードされたメソッドであり、オーバーロードされたバージョンの1つがを受け入れます。 beginIndex であり、指定されたインデックスの後のString内のすべての文字を返します。

また、 StringクラスのlastIndexOf()メソッドを使用します。 サブストリングを受け入れ、指定されたサブストリングが最後に出現するこのストリング内のインデックスを返します。 この指定された部分文字列は、この場合もスペース( “”)になります。

substring() lastIndexOf を組み合わせて、入力Stringの最後の単語を見つけましょう。

public String getLastWordUsingSubString(String input) {
    return input.substring(input.lastIndexOf(" ") + 1);
}

以前と同じ入力String、「バグのない日をお祈りします」を渡すと、メソッドは「日」を返します。

繰り返しになりますが、入力 String に単語が1つしかない場合、またはスペースがない場合、上記のメソッドは同じStringを返すだけであることに注意してください。

4. 結論

要約すると、JavaでStringの最後の単語を取得する2つの方法を見てきました。