java将一个句子拆分为字符串数组,并保留特殊字符或空格
我想把一个有空格或任何特殊字符的句子分成一个单词数组,其中空格或特殊字符也是数组的一个元素
像这样的句子:
aman,amit and sumit went to top-up
应拆分为字符串数组:
{"aman",",","amit"," ","and"," ","sumit"," ","went"," ","to"," ","top","-","up")
请建议使用任何正则表达式或逻辑来使用java进行拆分
我的问题遗漏了一件事。我还需要拆分数字字符。。但是使用split(“\b”)不会拆分具有以下内容的字符串
abc12def
进入
{ "abc", "12","def") or {"abc","1","2","def")
# 1 楼答案
我希望下面的代码片段能帮助您解决这个问题
# 2 楼答案
似乎您只需要匹配单词字符(
\w+
)或非单词字符(\W+
)。将它们与一个交替操作符结合起来,并-也许-添加一个Pattern.UNICODE_CHARACTER_CLASS
(或其内联/嵌入版本(?U)
),以使模式能够识别Unicode:见Java demo