検索した文字列を元の文字列(xmlファイル)から削除しようとしています。このために、replaceAll関数を使用しました。ただし、置換する文字列に「」を使用したため、空の改行が返されます。文字列を削除する別の方法はありますか?
start =str.indexOf("<opts>");
end =str.indexOf("</opts>");
String removeStr = str.substring(start -6, end + 7);
str = str.replaceAll(removeStr, "");
試した:
System.out.println("InitialString :="+str);
int start = str.indexOf("<opts>");
int end = str.lastIndexOf("</opts>"); //if \n is added, indent of tag<nos> changes
str = str.substring(0, start ) + str.substring(end + 7, str.length());
System.out.println("FinalString :="+str);
初期入力文字列:=
<data>
<param>2</param>
<unit>1</unit>
<opts>
<name>abc</name>
<venue>arena0</venue>
</opts>
<opts>
<name>xyz</name>
<venue>arena1</venue>
</opts>
<nos>100</nos>
</data>
最終出力文字列:=
<data>
<param>2</param>
<unit>1</unit>
<nos>100</nos>
</data>