簡體   English   中英

如何從Java中的字符串中刪除所有特殊字符?

[英]How to remove all special characters from a string in java?

我想從字符串中刪除所有特殊字符,我嘗試了stackoverflow中給出的許多選項,但是它們都不適合我。

這是我的代碼:

public class convert {

    public static void main(String[] args) {
        try {    
            List<List<String>> outerList = new ArrayList<List<String>>();
            outerList.add(new ArrayList<String>(asList("11-","2")));
            outerList.add(new ArrayList<String>(asList("(2^","1")));
            outerList.add(new ArrayList<String>(asList("11","3)")));    

            int i,j;
            for(i=0;i<outerList.size();i++){    
                    for(j=0;j<outerList.get(0).size();j++){    
                            outerList.get(i).get(j).replaceAll("[^\\w\\s]", "");
                            if(outerList.get(i).get(j).matches("-?\\d+"){
                               continue;
                            }else{
                               System.out.println("special characters not removed");
                               System.exit(0);
                            }
                   }
            }

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
} 

(簡單的)錯誤是s.replaceAll(...)不會更改s但是會產生一個新的更改后的字符串:

String s = outerList.get(i).get(j).replaceAll("[^\\w\\s]", "");
outerList.get(i).set(j, s);

如果不是字母數字,則可以使用

String value = "hello@() world";
value = value.replaceAll("[^A-Za-z0-9]", "");
System.out.println(value) // => helloworld

這里已經有人問過類似的問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM