2017-04-13 129 views
-2

是否有一種方法可以創建一個字符串,該字符串保留與正則表達式匹配的輸入字符串中的字符?保留與正則表達式匹配的字符串中的字符

我想保留所有字符,它們是'_'(下劃線)或[a-z][A-Z]。並刪除所有其他字符。

我要尋找一個爲一些功能,如:

String replaceAll(String inputString, String inputRegex); 

例如:

{ 
    ... 
    String inputString = "[email protected]#$cd12"; 
    String inputRegex = "[_a-zA-Z]"; 
    String outputString = replaceAll(inputString, inputRegex); 
    System.out.println(outputString); 
} 

輸出印刷 - aabcd

+0

我很困惑你的問題,因爲你沒有顯示代碼。你想知道如何使用'String.replaceAll',或者你想知道如何去做一個'regex',它不是所有的**,而是正則表達式? –

+0

對不起,我想知道是否有一個函數,如String.replaceAll,它會消耗兩個字符串 - 一個輸入字符串和一個輸出字符串 - 比如說String.replaceAll(inputString,inputRegex)。 – Reflexion

+0

你的意思是'String newString = inputString.replaceAll(inputRegex,「」);它會替換在您的inputRegex中找到的字符與空白 –

回答

1

只要改變你的正則表達式來描述所有的字符在你的設置(注意脫字符^字符)。

String inputString = "[email protected]#$cd12"; 
String inputRegex = "[^_a-zA-Z]+"; 
String outputString = inputString.replaceAll(inputRegex, ""); 
+0

我已經添加了一個投票,但它不算作我的個人資料低於15的聲望。我非常欣賞這個簡單的解決方案 – Reflexion