jar1
July 25, 2024, 4:19am
1
What does keepempty
mean in split
? Is there a good example?
• keepempty: whether empty fields should be kept in the result. Default is false without a dlm argument, true with a dlm argument.
julia> split("hello;there;user;;;foo", ";"; limit=4, keepempty=false)
4-element Vector{SubString{String}}:
"hello"
"there"
"user"
";;foo"
In your example it’s not obvious what the difference is between keepempty=false
and true
because the empty fields occur after the 4th split and you have limit=4
. Removing this we can see:
julia> split("hello;there;user;;;foo", ";"; keepempty=true)
6-element Vector{SubString{String}}:
"hello"
"there"
"user"
""
""
"foo"
julia> split("hello;there;user;;;foo", ";"; keepempty=false)
4-element Vector{SubString{String}}:
"hello"
"there"
"user"
"foo"
Essentially, if you have two delimiters in a row (ie “;;”) it controls whether to return an empty string or to ignore it.
HTH
1 Like