回答
可以使用String
类的split(" ")
方法和代码如下可以得到每个字:
String s = "I want to walk my dog";
String []strArray=s.split(" ");
for(int i=0; i<strArray.length;i++) {
System.out.println(strArray[i]);
}
又一方法中,使用StringTokenizer:
String s = "I want to walk my dog";
StringTokenizer tokenizer = new StringTokenizer(s);
while(tokenizer.hasMoreTokens()) {
System.out.println(tokenizer.nextToken());
}
啊!这是好的情况下,我不需要一个数组,但不是标记器返回一个令牌数组?不错,但 – 2017-01-20 21:42:43
不,没有任何阵列正在生产。 'StringTokenizer'在字符串中查找连续的标记并逐一返回。 – Kao 2017-01-21 12:55:09
不错的解决方案,不幸的是,StringTokenizer不应该再被使用。 来自文档: StringTokenizer是一个遗留类,为了兼容性原因被保留,尽管在新代码中不鼓励使用它。建议任何寻求此功能的人使用String或java.util.regex包的拆分方法。 – Tomor 2018-01-06 19:24:50
甲正则表达式也可以使用分开单词。 \ W可以用来匹配字字符([A-ZA-Z0-9_]),这样,标点符号从结果中移除:
String s = "I want to walk my dog, and why not?";
Pattern pattern = Pattern.compile("\\w+");
Matcher matcher = pattern.matcher(s);
while (matcher.find()) {
System.out.println(matcher.group());
}
输出:
I
want
to
walk
my
dog
and
why
not
见Java API文档为Pattern
这是否产生空的话? – 2016-04-27 22:10:47
作为一个更通用的解决方案(!但仅ASCII),包括单词之间的任何其它的分隔符(如逗号和分号),我建议:
String s = "I want to walk my dog, cat, and tarantula; maybe even my tortoise.";
String[] words = s.split("\\W+");
正则表达式意味着分隔符将是任何不是一个单词[\ W],至少有一组[+]。因为[+]很贪婪,所以需要比如';'和''一起作为一个分隔符。
\\ W似乎只考虑ASCII字母字符。它不适用于有口音的语言。 – rghome 2017-05-19 13:56:27
谢谢你指出这一点!相应地更改了答案。 – 2017-05-21 14:03:56
见我other answer如果你的短语包含突出特点:
String[] listeMots = phrase.split("\\P{L}+");
这是最好的答案。 – rghome 2017-05-19 14:06:26
要包含的关键字(例如除全部小写和大写字母的所有内容)之间的分隔符,我们可以这样做:
String mystring = "hi, there,hi Leo";
String[] arr = mystring.split("[^a-zA-Z]+");
for(int i = 0; i < arr.length; i += 1)
{
System.out.println(arr[i]);
}
这里的正则表示分隔符将是任何不是大写或小写字母[^a-zA-Z]
,至少一个[+]的组。
- 1. 分割字符串后得到单词
- 2. 将字符串分割为各个位
- 3. 查找单词和分割字符串
- 4. 基于单词分割字符串
- 5. 分割字符串由大写单词
- 6. 分割单词的第一个字符
- 7. 分割字符串中的单词的Java
- 8. 的Makefile如何分割字符串为单个单词?
- 9. 分割字符串的Java
- 10. 分割字符串,Java的
- 11. 如何在Java中分割单词而不是单个字符?
- 12. 的Java字符串分割到数组
- 13. 将字符串分割成Ocaml中的单词字符列表
- 14. 想要在某个单词后分割一个字符串?
- 15. javascript,分割字符串,并显示一个单词的大胆
- 16. java字符串分割
- 17. 分割字符串与Java
- 18. 分割字符串java
- 19. 用'。'分割Java字符串
- 20. 分割Java字符串
- 21. Java和字符串分割
- 22. 分割Java字符串
- 23. 使用单词作为分隔符分割字符串
- 24. 分割字符串,并添加连字符单词之间
- 25. 在遇到特定单词时分割字符串
- 26. 字符串分割到小零件[JAVA]
- 27. 分割字符串,同时保留整个单词
- 28. 在Java中分割一个字符串,
- 29. 字符串分割到两个字符串由分隔符
- 30. 分割包含单词和数字的字符串
请显示*你已经尝试了什么(例如,你在String的文档中查找单词“split”)? – 2012-07-30 16:53:13
是的,String#split()被非常模糊地命名为:-P – maksimov 2012-07-30 16:53:59