2013-06-10 2 views
0

나는 안드로이드에 대한 멍청한 놈이야. 나는 끈을 바꾸는데 문제가있다. arraylist에서 채워지는 listview 있습니다. 내 OnItemClick 메서드에서 선택 값을 소문자로 만들고 공백을 제거하고 아포스트로피를 제거하고 싶습니다. 그러나 나는 문자열을 소문자로 만 만들 수 있었고 공간과 아포스트로피는 남아 있습니다. 예를 들어, "Bear 's Garlic"은 "bearsgarilc"가 아니라 "bear 's garlic"이됩니다. 어떤 도움이라도 대단히 감사합니다.왜 공백과 문자가 문자열에서 제거되지 않습니까?

자바 String의는 불변

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); 

답변

3

때문에 내 코드 :

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); 
+0

문자와 공백을 삭제할 수 없다는 말입니까? –

+0

아니요 herb_pic을 "제자리에서"수정할 수 없다는 것을 말하고 있습니다.하지만 String에서 작업 할 때마다 replaceAll을 예로들 때마다 새로운 문자열 설치가 반환됩니다 – Blackbelt

1

replace 기능은 문자가 대체 된 문자열을 반환하기 때문에.

herb_pic = herb_pic.replaceAll("\\s+", ""); 
관련 문제