2015-01-13 58 views
0

我已閱讀所有已發佈的問題,但無法理解我知道我們必須使用的語法|但我不知道如何去做。 我不知道正則表達式。所以請告訴我掃描儀類的useDelimiter函數的完整聲明。使用兩者和。作爲掃描儀類中的分隔符

我試圖分離,b.c,D.E,成 一個 b Ç d Ë 掃描器類的使用next()

回答

3

傳遞給useDelimiter的參數是一個正則表達式。因此,在這種情況下,您可以使用與,.匹配的表達式,如"[,.]"

+1

內部字符類的分隔符,在'.'失去了它的元字符性質,不是通配符。您建議的正則表達式將匹配',','\\'或'.'。它應該是簡單的'「[,。]」'。 [哇,我無法在這個評論中正確地使用反引號。] –

+0

哦,好點。謝謝特德,我會解決它。 _invoke time machine_ There。修復。我認爲它不會匹配反斜槓,因爲反斜槓不會在'[]'內部失去其特殊性,所以這實際上是正確的,但稍微多餘。 –

+0

除了你將反斜槓加倍外,這就是你如何轉義反斜槓並將其帶入角色類。 :)但它現在消失了,所以一切都很好。 –

1

您可以使用Scanner來閱讀整個String。然後,你將有一些像下面

String str="a,b.c,d.e,"; 

現在你可以使用replaceAll()方法來得到你想要的。

String str="a,b.c,d.e,"; 
System.out.println(str.replaceAll(",|\\."," ")); 

輸出地說:

a b c d e