0

私はアンドロイドの初心者で、文字列の変更に問題があります。配列リストから取り込まれているリストビューがあります。私の OnItemClick メソッドでは、選択範囲の値を小文字にし、スペースを削除し、アポストロフィを削除したいと考えています。ただし、文字列を小文字にすることしかできず、スペースとアポストロフィが残っています。たとえば、「熊のにんにく」は「熊のにんにく」ではなく「熊のにんにく」になります。どんな助けでも大歓迎です。

マイコード

String herb_pic = herb_ListView.getItemAtPosition(position).toString().toLowerCase() + "_picture";
                        herb_pic.replaceAll("\\s+", ""); //Not removing whitespaces
                        herb_pic.replace(" ", ""); //Not removing space
                        herb_pic.replace("'", ""); //not removing apostrophe
                        herb_pic.replace(".", ""); //Not removing 
                        Log.e("herb_pic result", herb_pic); 
4

2 に答える 2

3

Java ではStrings は不変であるため:

String herb_pic = herb_ListView.getItemAtPosition(position).toString().toLowerCase() + "_picture";
herb_pic = herb_pic.replaceAll("\\s+", ""); //Not removing whitespaces
herb_pic = herb_pic.replace(" ", ""); //Not removing space
herb_pic = herb_pic.replace("'", ""); //not removing apostrophe
herb_pic = herb_pic.replace(".", ""); //Not removing 
Log.e("herb_pic result", herb_pic); 
于 2013-06-10T12:18:14.360 に答える
1

replace関数は、文字が置き換えられた String を返すためです。

herb_pic = herb_pic.replaceAll("\\s+", "");
于 2013-06-10T12:18:56.880 に答える