-1
我想在Java中以點(「。」)分割字符串,並且我知道String在Java中的分割函數使用正則表達式,所以我使用someString.split("\.")
來轉義特殊字符「。」,但它沒有工作;我試過someString.split("\\.")
,它工作。爲什麼「 t」在Java String.split中工作,但不是「。」?
我之前用split("\t")
來分割字符串與選項卡,它的工作。爲什麼沒有必要跳過像split("\\t")
這樣的特殊字符'\t'
?
@ErwinBolwidt:謝謝你提醒我。這麼多語言,很多*略*不同的規則...... :-) –
查看鏈接的問題的答案的細節,但重新之間的''\。「'和'」\ t「'之間的二分法,這是因爲在字符串文字,'\ .'是無效的轉義序列,而在字符串文字中,'\ t'是一個製表符。由於製表符在正則表達式中並不特殊,因此'split(「\ t」)'在選項卡上分割。爲了將反斜槓傳遞給底層正則表達式(所以你可以轉義'.',因爲它在正則表達式中是特殊的),所以你需要在字符串中有實際的反斜槓,所以當然你必須轉義它('「\ \。「')。 –