如何使用正则表达式拆分Java字符串?

我在拆分字符串方面有些挣扎。

这是我想要的输入和正确输出的示例:

输入:“希望您一切都好!我做得很好。” <---句点之后的几个空格

输出:[希望,“”,你是“”,干得好,“!” ,“”,“我”,“”,“上午”,“”,“正在做”,“”,“确定”,“”。 ,“”,“”,“”,“”,“]]

我想要一个将所有单词拆分成它自己的索引的输出(即使它包含撇号)。另外,我希望所有空格和标点符号(?,!,。,“”)在数组中都有自己的索引。

这是我尝试过的方法:我收到了一条字符串消息,并使用了split函数。我使用了一个正则表达式,可以为我提供几乎正确的输出,但是在使用句点之后并没有考虑额外的空间。

我使用的正则表达式:

"\\b |(?=\\p{Punct})|(?<=\\p{Punct}) | "

有人有什么建议吗?感谢您的时间。

评论