How do I avoid trailing empty items being removed when splitting strings?
开发者_运维百科I am doing:
"b::::c:::".split(':')
Result:
["b", "", "", "", "c", "", ""] # expect
["b", "", "", "", "c"] # actual
What is the problem here? how can i get what i expected.
There's a limit
parameter to .split(pattern=$;, [limit])
. If limit
is omitted, trailing null fields are suppressed. You need to provide a negative limit
"b::::c:::".split(':', -1)
but bear in mind that this will return three ""
values at the end of the array.
result: ["b", "", "", "", "c", "", "", ""]
精彩评论