2013-05-01 21 views
-5

我有一個像這樣的ArrayList:​​3210如何從ArrayList中刪除特殊字符?

我想刪除所有特殊字符。

我該怎麼做?

+0

你認爲什麼特殊字符?任何不在字母表中的東西?不是字母數字的東西? – thegrinner 2013-05-01 13:24:23

+0

你如何定義一個'特殊'字符? – 2013-05-01 13:25:29

+2

這看起來不像'ArrayList',看起來像一個'String'。或者你是說這是一個'ArrayList '? – durron597 2013-05-01 13:25:45

回答

4

創建一個regex它符合您的標準。然後循環訪問list

String myRegex = "[^a-zA-Z0-9]"; 

int index = 0; 
for (String s : list) 
    list.set(index++, s.replaceAll(myRegex, "")); 
0

您可以嘗試使用

Iterator<String> it = myStringArrayList.iterator(); 
    while (it.hasNext()) { 
     int index = it.nextIndex(); 
     String str = (String) it.next(); 
     str= str.replaceAll(":,. ", ""); 
     myStringArrayList.set(index, str); 
    } 
} 

這應該沒事即刪除它們,然後替換字符串返回數組中更換任何冒號,逗號,句號等。

0

嘗試:

StringBuffer strBuffer = new StringBuffer(); 
for(Object o: list){ 
    strBuffer.append(o); 
} 
String str = strBuffer.toString(); 
String getStr = str.replaceAll("\\<.*?\\>", " "); 
str = str.replaceAll("[ \t\"',;]+", " "); 
return str; 

然後再次STR可以轉換到列表