The*_*aul 6 string split scala scala-2.8
应该",7-6-5-4-3-2-1,".split(',')返回什么?
它似乎回归了
blank string
7-6-5-4-3-2-1
Run Code Online (Sandbox Code Playgroud)
即.两个字符串.我期待一个或三个字符串 - 两端都是空字符串,或者只是','之间的字符串.
我错了吗?目前的行为有一个很好的解释吗?
编辑:
好.所以是的,我有错误的期望,不,除了Java这样的方式之外没有其他好的解释:).谢谢.
EDIT2:
您可以使用split(",", -1)
(Scala 2.8.1)获得所需的行为
这种行为是可以预见的.String#split(Char)最终(通过StringLike#split(Char)和String#split(String))调用了Java String#split(String, 0)其记录:
[...]模式将被应用尽可能多次,数组可以具有任何长度,并且尾随空字符串将被丢弃
编辑 -如果你想在拆分字符串的更多控制,看Splitter在番石榴库.
Splitter.on(',').split(",7-6-5-4-3-2-1,")
Run Code Online (Sandbox Code Playgroud)