1

私はアンドロイドに取り組んでいます。巨大なデータを含む文字列があります。その文字列で、特定の文字を別の文字に置き換えたいと思います。置き換えたい文字のインデックスを取得しました。しかし、そのキャラクターを置き換えることはできません。どうやってやるの?

String str = "data1data2mdata2test1test2test3dd" 

int ind = str.indexOf("m");
System.out.println("the index of m" + ind);

上記の文字列で、文字「m」(data2 の後) を「#」に置き換えます。

m を # に置き換える方法を教えてください。この点で私を助けてください。

4

4 に答える 4

3

使用できますsubstring

String newStr = str.substring(0, ind) + '#' + str.substring(ind + 1);
于 2013-08-06T07:33:02.203 に答える
3

これを試して: str = str.replaceFirst("m", "#");

最初の m を # に置き換えます

于 2013-08-06T07:33:22.047 に答える
0

つまり、システム出力として 10 を取得しているので、このように置き換えることができます。

Str.replace('m', '#')--->when you want all occurrences of it to replace it,

または、最初に出現したものだけを # に置き換えたい場合は、次のトリックを実行できます。

StringBuffer buff=new StringBuffer();
buff.append(Str.substring(0,ind)).append("#").append(Str.substring(ind+1));

それが役立つことを願っています

于 2013-08-06T07:40:21.520 に答える