2013-04-19 128 views
-4

如何根據?,!拆分文本int語句數組,和。在Java中?如何根據?,!拆分文本的int數組,和。在Java中?

例如,我想將一個字符串中的句子存儲到一個超大的數組中。 myArray的[0] =第一句子,myArray的[1] =第二句子和等/

+4

你有沒有試圖解決這個問題?如果您告訴我們迄今爲止已嘗試的內容,我們將更願意回答您的問題。 (提問更好的問題的有用鏈接:[問],[常見問題]) – Doorknob

回答

1

嘗試此正則表達式:

String[] myArray = "sentence! sentence. sentence?".split("(<=[\\!\\?\\.])\\s*") 

說明:

(<=  lookbehind, to preserve punctuation as in @dasblinkenlight's answer 
[   start category (which would be !, ?, or .) 
\\!\\?\\. punctuation (must be escaped) 
]   end category 
)   end lookbehind 
\\s*  any amount of whitespace 
2

可以使用String.split(regex)方法,像這樣的:

String[] sentendes = text.split("(?<=[.!?])\\s*"); 

使用回顧後應該HEL你在句子後保留標點符號。

這是一個小的demo on ideone