2015-02-10 19 views
0

我有這樣的代碼如何去除Android中不需要的字符?

public String StripText(String name){ 

     String stripped = name.replaceAll("/:[email protected]#$%^&*()<>+?\"{}[]=`~;", ""); 

     return stripped; 
    } 

不工作。我希望它返回一個字符串,消除像「/」「:」「!! 「@「 等等。

例如如果我給它一個字符串「puppy:)love」,我希望它返回一個只包含「puppylove」的字符串。

回答

2

您只需要將所有字符放在character class之內即可。使用「字符類」(也稱爲「字符集」),可以指示正則表達式引擎僅匹配幾個字符中的一個字符。只需將要匹配的字符放在方括號中即可。

String stripped = name.replaceAll("[/:[email protected]#$%^&*()<>+?\"{}\\[\\]=`~;]", ""); 

您還需要逃避目前字符類中[]字符或將考慮第一]作爲charclass將的結束。

例子:

String name = "[{puppy:)love}]"; 
String stripped = name.replaceAll("[/:[email protected]#$%^&*()<>+?\"{}\\[\\]=`~;]", ""); 
System.out.println(stripped); 

輸出:

puppylove 
+0

感謝它的工作! – user3517855 2015-02-10 06:18:03

+0

我忘了添加一些東西。謝謝! – user3517855 2015-02-10 06:22:02

+0

很高興能解決.. – 2015-02-10 06:22:43

相關問題