Ruby字符串拆分意外结果

时间:2012-02-10 03:55:42

标签: ruby split

使用此代码:

"\t\ttest\t\t\t".split(/\t/)

我希望得到以下结果:

 => ["", "", "test", "", "", ""]

但结果是:

=> ["", "", "test"]

为什么?

1 个答案:

答案 0 :(得分:7)

如果省略limit参数,则返回的空字段将保留在返回的数组之外。如果是否定的,则返回:

# Supply -1 as the limit parameter
"\t\ttest\t\t\t".split(/\t/, -1)
=> ["", "", "test", "", "", ""]

详情请见String.split() documentation.