2016-11-22 38 views
-1

不能得到它的權利,我需要接受隻字母,數字和「_」(下劃線),但它不似乎工作:Android的正則表達式接受特定字符

String regex = "\\[0-9a-zA-Z\\._]"; 
lastResponse = lastResponse.replaceAll(regex, ""); 
+0

當你逃脫''時,你將字符轉換爲一個字符序列。既然你是*替換*/*刪除*嘗試一個正則表達式與* negated *字符類:'字符串正則表達式=「[^ 0-9a-zA-Z ._]」;'。如果您需要刪除一個點,請將其從此模式中刪除(您不提及問題中的任何點,但是它存在於原始模式中)。 –

+0

如果你想接受這些,那麼你爲什麼要替換它們?另外,領先的'\\'是爲了什麼? –

+0

你可以用'「(?:。| \\ W)+」',我想 –

回答

1

根據您的要求,

我需要接受隻字母,數字和 「_」(下劃線)

所有你需要做的是,

String regex = "[^a-zA-Z0-9_]"; 
lastResponse = lastResponse.replaceAll(regex, ""); 

這將替換除了字母,數字和下劃線之外的所有lastResponse字符。

相關問題