julia> kody5[1]
"orbis sa 00-028 ul bracka 16 oddzial hotel aria w sosnowcu"
julia> findall(rx,kody5[1])
1-element Array{UnitRange{Int64},1}:
10:15
julia> kody5[1]findall(rx,kody5[1])
ERROR: MethodError: no method matching *(::String, ::Array{UnitRange{Int64},1})
Closest candidates are:
*(::Any, ::Any, ::Any, ::Any...) at operators.jl:538
julia> kody5[1][10:15]
"00-028"
Paul
You are missing square brackets around findall.
kody5[1][findall(rx,kody5[1])]
1 Like
Sorry but not works
julia> kody5[1][findall(rx,kody5[1])]
ERROR: MethodError: no method matching getindex(::String, ::Array{UnitRange{Int64},1})
Closest candidates are:
getindex(::String, ::UnitRange{Int64}) at strings/string.jl:244
getindex(::String, ::Int64) at strings/string.jl:209
getindex(::String, ::UnitRange{var"#s91"} where var"#s91"<:Integer) at strings/string.jl:242
...
Stacktrace:
[1] top-level scope at REPL[123]:1
julia> kody5[1]
"orbis sa 00-028 ul bracka 16 oddzial hotel aria w sosnowcu"
julia> [findall(rx,kody5[1])]
1-element Array{Array{UnitRange{Int64},1},1}:
[10:15]
Works like this, with spcjal
julia> kody5[1][findall(rx,kody5[1])[]]
"00-028"
You are using findall
, findall
will always return a vector with all ranges, by using []
you are now getting only the first range, are you sure this is what you want? If this is what you want you should just use findfirst
instead of findall
.
Yes, sorry, it’s an array so you need to extract an element.