【发布时间】:2012-08-26 08:20:28
【问题描述】:
我希望在 Java 中将一个句子拆分为一个由逗号分隔的单词数组。
也就是说,我想要一个像这样的句子:
“狗跳了”
“高过”
成为
“狗,跳了”
“高过”
我似乎无法使用 .split(",") 方法获取空格并用逗号插入,但这似乎不起作用,结果仍然是原始结果。想法?谢谢!
【问题讨论】:
-
只需谷歌搜索就可以解决这个问题
我希望在 Java 中将一个句子拆分为一个由逗号分隔的单词数组。
也就是说,我想要一个像这样的句子:
“狗跳了”
“高过”
成为
“狗,跳了”
“高过”
我似乎无法使用 .split(",") 方法获取空格并用逗号插入,但这似乎不起作用,结果仍然是原始结果。想法?谢谢!
【问题讨论】:
最简单的方法是使用String#replaceAll(),将空格替换为,:
String s = "The dog jumped";
String sWithComma = s.replaceAll(" ", ",");
如果您想允许比您发布的示例更复杂的情况(多个空格、制表符等),您应该使用this other answer。
【讨论】:
"\\s+" 而不是" " 来捕获制表符和多个空格。
对一个或多个空格使用正则表达式并将其替换为 "," 像这样-
"The dog jumped".replaceAll("\\s+", ",")
【讨论】:
有很多方法可以做到这一点。我会考虑将 strtok 用于这样的任务,或者可能是 apache commons StringUtils 包或 replaceAll。我不会给你确切的代码,因为这闻起来像一个作业:)
【讨论】: