如何在拆分字符串时避免追踪删除的空项目?

时间:2011-03-27 22:55:55

标签: ruby

我在做:

"b::::c:::".split(':')

结果:

["b", "", "", "", "c", "", ""] # expect
["b", "", "", "", "c"] # actual

这是什么问题?我怎样才能得到我所期望的。

1 个答案:

答案 0 :(得分:18)

limit有一个.split(pattern=$;, [limit])参数。如果省略limit,则禁止尾随空字段。您需要提供否定的limit

"b::::c:::".split(':', -1) 

但请记住,这会在数组的末尾返回三个""值。

result: ["b", "", "", "", "c", "", "", ""]