拆分文本需要空间给我一个空项目?

Rad*_*dek -2 ruby split

拆分后我真的需要空间来获得三个元素吗?或者有人可以解释为什么会如此?(注意:ruby中的代码,不确定它是如何用不同的语言)

test1="2011112512215| | "
test2="2011112512215||"

puts test1.split("|").length    # =3
puts test2.split("|").length    # =1
Run Code Online (Sandbox Code Playgroud)

Fil*_*efp 5

否,String#split接受第二个参数,您可以在其中指定将发生的拆分数量的限制.

传递负值将使该函数不会删除长度的尾随元素0.

puts "2011112512215||".split ("|", -1)        # = ["2011112512215","",""]
puts "2011112512215||".split ("|", -1).length # = 3
Run Code Online (Sandbox Code Playgroud)