有一个字符串string a=" *|** || |**|** ";
该空格将此字符串分为三组。如何将这三个组转换为具有三个元素的数组?
我尝试使用split,
String a=" *|** || |**|** ";
String names[]=a.trim().split(" ");
System.out.println(names.length);
预期输出应为3,但是,它显示8.任何人都可以告诉我该怎么做?感谢
答案 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+"
搜索任何空格。