如何使用Java分割字符串?
分割一个看起来像这样的字符串
<a><b><c></c></b></a>
我尝试使用下面的代码用java
String[] s =input.split("[<>]+");
System.out.println(Arrays.toString(s));
,这是输出
[, a, b, c, /c, /b, /a]
我不知道我应该做什么来摆脱结果数组开头的这个空字符串。
有什么建议吗?
i tried to split a string looks like this
<a><b><c></c></b></a>
with java using the following code
String[] s =input.split("[<>]+");
System.out.println(Arrays.toString(s));
and this was the output
[, a, b, c, /c, /b, /a]
i don't know what should i do to get rid of this empty string in the beginning of the resulting array.
any suggestions ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
还有一种使用正则表达式匹配的替代方法:
输出:
[a、b、c、/c、/b、/a]
There is an alternative method using regular expression matching:
Output:
[a, b, c, /c, /b, /a]
正常情况下是这样的如果要删除第一个空元素,请使用 next:
或循环查找空元素。
It's normally. If you want to remove first empty element use next:
Or go in cycle looking for empty elements.
如果您准备使用 Google Guava 库,则 Splitter 有一种巧妙的方法可以使用
Splitter#omitEmptyStrings()
省略空字符串。If you are up for using Google Guava library, then Splitter has a neat way to omit empty strings using
Splitter#omitEmptyStrings()
.您将需要遍历所有元素以删除空元素。
You will need to iterate through all the elements to get rid of the empty ones..
如果您确定输入格式,您可以执行以下操作:
If you're sure about the input format you can do: