这是我的输入字符串,我试图在Scala中拆分。我发现在我理解分裂的方式上似乎有一些根本的区别,或者这根据我的输入不起作用。我的输入有0,“”,“”作为最后三个字符。在分割时,输出以0结尾,输入字符串“”和“”中的最后两个空白字符将被忽略。
这是我的常规exp
val lines = "5;;ABCDEF;GHIJK;;DEC;XXXX;;;;;;YYYY;ZZZZZ;XXXXXXX ;4;YYYY;;;;;;;;;0**;;;**"
val parsedArray = lines.map(_.split("\\;"))
Array[java.lang.String] = Array(5, "", ABCDEF, GHIJK, "", DEC, XXXX, "", "", "", "", "", YYYY, ZZZZZ, XXXXXXX, 4, YYYY, "", "", "", "", "", "", "", **"", 0)**
你能感觉到什么吗?
答案 0 :(得分:3)
来自http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#split(java.lang.String, int):
如果n是非正数,那么模式将被应用多次 可能,阵列可以有任何长度。如果n为零,那么 模式将尽可能多地应用,数组可以有 任何长度,尾随空字符串都将被丢弃。