いやー、いろいろバタバタしてたのと、プログラムというよりデータイジリーばっかやってたので書くことがなかった一月近く。
タイトルはわかりにくいけど
あ、あるよね?
僕はなぜかしょっちゅうあるんですよ。
タイトルはわかりにくいけど
"あああxいいいいxううううx"という文字列があったときに、最後のxだけ削除したいみたいなケースのことをいってます。
あ、あるよね?
僕はなぜかしょっちゅうあるんですよ。
というわけで、こんなメソッドを作ったんだけど・・・なんだこりゃ。
/**
* stringの後ろから検索して一番最初に現れたwordを削除する.Stringがnullの場合はNullPointerExceptionを、空の場合は空を返す
* @param string
* @param word
* @return
*/
public static final String removeLastWordFromString(String string, String word) {
if(string.equals("")){
return "";
}
return string.substring(0, string.lastIndexOf(word));
}
ファイルの入出力とかもそうだけど、Javaはこういうラッパークラスというか(用語がよくわかってない)そういうのがないと、いちいちおぼえてらんない手続きが多すぎるところがLL言語の人気に拍車をかけちゃうのかな、とか思ったり。
こんなのはいかがですか?正規表現を使った例。
private String remove(String str, String removeStr) {
return str.replaceFirst(removeStr + "\$", "");
}