假设我有这个:
a = "|hello"
Run Code Online (Sandbox Code Playgroud)
如果我做:
a.split("|") #=> ["", "hello"]
Run Code Online (Sandbox Code Playgroud)
现在说我有:
b = "hello|"
Run Code Online (Sandbox Code Playgroud)
如果我做:
b.split("|") #=> ["hello"]
Run Code Online (Sandbox Code Playgroud)
为什么会这样?我期待结果["hello", ""],类似于第一个例子.这种split方法工作不一致.或者是否有一些我不了解的内在工作?
文档中描述了此行为:
如果省略limit参数,则禁止尾随空字段.
如果要保存尾随空字符串,只需添加正数或负数限制,作为文档提供:
"hello|".split('|', 2)
#=> ["hello", ""]
"hello|||".split('|', -1)
#=> ["hello", "", "", ""]
Run Code Online (Sandbox Code Playgroud)
注意
如果为负数,则返回的字段数没有限制,并且不会抑制尾随空字段.
| 归档时间: |
|
| 查看次数: |
75 次 |
| 最近记录: |