J2SE の API を目的別に調べることができる辞典

ホーム > Java(SE) API 逆引き辞典 > 文字列 > 文字列の一部を削除する

Java(SE) API 逆引き辞典

:: reverse dictionary ::

文字列

※ソースファイルについて

◎各マークの意味
Pbpubic Prprotected Sstatic


文字列の一部を削除する

文字列の一部を削除するには、StringBuffer クラスの delete メソッドを使います。

String str = "Java[削除する部分]プログラム";

StringBuffer sb = new StringBuffer(str);
sb.delete(4, 12);

String strnew = sb.toString();

ソースファイル

strnew"Javaプログラム" になります。


1文字ずつ削除する場合は、deleteCharAt メソッドを使います。

String str = "Ja削除va";

StringBuffer sb = new StringBuffer(str);
sb.deleteCharAt(3).deleteCharAt(2);

String strnew = sb.toString();

ソースファイル

strnew"Java" になります。

▼ メソッド

java.lang.StringBuffer
Pb StringBuffer delete(int si, int ei)

対象の文字列バッファにおいて、開始インデックス si から終了インデックス ei の前までの文字列を削除します。

●引数

si … 削除開始文字のインデックス
ei … 削除終了文字の次の文字のインデックス
(= 削除終了文字までの文字数)

●戻り値

si から ei の前までの文字列を削除した文字列バッファ

●例外
StringIndexOutOfBoundsException
(1) インデックスがマイナスの場合
(2) インデックスが文字数を超える場合
(3) 開始インデックスが終了インデックスより大きい場合( si > ei

▼ メソッド

java.lang.StringBuffer
Pb StringBuffer deleteCharAt(int i)

対象の文字列バッファのインデックス i にある文字を削除します。

●引数

i … 削除する文字のインデックス

●戻り値

インデックス i にある文字を削除した文字列バッファ

●例外
StringIndexOutOfBoundsException
(1) インデックスがマイナスの場合
(2) インデックスが文字数以上の場合

▼ 参考

削除する部分の文字列がわかっている場合は、String クラスの indexOf メソッドでそのインデックスを求めることができます。

String str = "Java[削除する部分]プログラム";

// 削除する部分の開始インデックスを求める
String delStart = "[削除";
int indexStart = str.indexOf(delStart);

// 削除する部分の終了インデックスを求める
String delEnd = "部分]";
int indexEnd = str.indexOf(delEnd) + delEnd.length();

StringBuffer sb = new StringBuffer(str);
sb.delete(indexStart, indexEnd);

String strnew = sb.toString();

ソースファイル

strnew"Javaプログラム" になります。

注目キーワード ベスト5

  1. セキュリティ
  2. ホスティング
  3. レンタルサーバ
  4. ファイル復旧
  5. ハードディスク修復

文字列 - string -


ホーム > Java(SE) API 逆引き辞典 > 文字列 > 文字列の一部を削除する

Copyright (C) 2005-2007 Noto Watabe. All rights reserved.
e-mail:wmh@always-pg.com