<分区>
我想用分隔符“|”分割一个字符串在 Java 中获取字符串数组,这是我的代码:
String str = "123|sdf||";
String[] array = str.split("\\|");
我将获得包含 2 个元素的数组:"123","sdf"
。
我希望数组有 4 个元素:"123","sdf","",""
;
我可以使用现有的类(class)来做到这一点吗?我也试过 StringTokernizer,不起作用
标签 java
<分区>
我想用分隔符“|”分割一个字符串在 Java 中获取字符串数组,这是我的代码:
String str = "123|sdf||";
String[] array = str.split("\\|");
我将获得包含 2 个元素的数组:"123","sdf"
。
我希望数组有 4 个元素:"123","sdf","",""
;
我可以使用现有的类(class)来做到这一点吗?我也试过 StringTokernizer,不起作用
最佳答案
split()
方法有一个 secret 的、可选的第二个参数!
String[] array = str.split("\\|", -1); // won't discard trailing empty elements
默认情况下,split()
(带有一个参数)从结果中丢弃尾随的空元素。
如果提供了第二个参数,则关闭此默认丢弃行为,如果为正则限制提取的元素数量(但如果找到的元素较少,将返回少于此数量),或者如果为负则返回无限元素。
在 javadoc 中了解它.
关于带分隔符的java字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21771835/