2017-10-07 74 views
0

我試圖用split函數的語法如下有一個詞+空格作爲分隔符

String[] i = "HI. HOW ARE YOU? I AM FINE! ".split("[\\. |? |! ]+"); 

預計輸出到分割字符串「HI. HOW ARE YOU? I AM FINE!」到字符串數組

HI

你是怎麼回事

I AM FINE

但在intellij中,它的意思是「重複字符字面」,它將空間視爲一個單獨的分隔符。

我該如何確保它將句號加上空格,問號加上空格和感嘆號加上空格而沒有將空格視爲單獨的分隔符? 這將是正確的正則表達式? 如果沒有正則表達式就可以完成,即使這樣也行。

謝謝。

+1

預期產量是多少? – azro

+1

嘗試['String pat =「[。?!] + \\ s *」;'](https://regex101.com/r/8TI6Ax/1) –

+0

如果您有''HI ...怎麼辦?你???我很好!!!「? –

回答

-1

一個更好的模式將是

"[?!.]\\s*" 

至於你所得到的錯誤,那是因爲|運營商不字符類內工作。如果您希望圖案起作用,請將方括號[...]更改爲括號(...)

相關問題