如何检测由空格分隔的组

时间:2015-03-10 21:28:12

标签: java

有一个字符串string a=" *|** || |**|** ";

该空格将此字符串分为三组。如何将这三个组转换为具有三个元素的数组?

我尝试使用split,

String a="  *|** ||      |**|** ";
String names[]=a.trim().split(" ");
System.out.println(names.length);

预期输出应为3,但是,它显示8.任何人都可以告诉我该怎么做?感谢

2 个答案:

答案 0 :(得分:1)

尝试拆分多个空格,您的代码会在单个空格字符上拆分。 \ s +是一个或多个空格的正则表达式。

String a = "  *|** ||      |**|** ";
String names[] = a.trim().split("\\s+");
System.out.println(names.length);
System.out.println(Arrays.toString(names));

输出

3
[*|**, ||, |**|**]

答案 1 :(得分:1)

String a="  *|** ||      |**|** ";
String names[]=a.trim().split("\\s+");
System.out.println(names.length);

这会分割任意数量的空格字符(常规空格,制表符等)

正则表达式"\\s+"搜索任何空格。