Julia 0.5 tinha uma função Dates.parse
que poderia analisar uma string em um Array{Period}
. A função foi útil para analisar DateTime
s que precisava de modificação antes de construir um objeto DateTime
.
Por exemplo, em Julia 0.5:
julia> df = Dates.DateFormat("yyyy-mm-dd HH:MM");
julia> DateTime("2016-03-03 24:00", df)
ERROR: ArgumentError: Hour: 24 out of range (0:23)
in DateTime(::Int64, ::Int64, ::Int64, ::Int64, ::Int64, ::Int64, ::Int64) at ./dates/types.jl:149
in DateTime(::Base.Dates.Year, ::Base.Dates.Month, ::Base.Dates.Day, ::Base.Dates.Hour, ::Base.Dates.Minute) at ./dates/types.jl:172
in DateTime(::String, ::Base.Dates.DateFormat) at ./dates/io.jl:268
julia> Dates.parse("2016-03-03 24:00", df)
5-element Array{Base.Dates.Period,1}:
2016 years
3 months
3 days
24 hours
0 minutes
Em Julia 0,6
julia> Dates.parse("2016-03-03 24:00", Dates.DateFormat("yyyy-mm-dd HH:MM"))
ERROR: MethodError: no method matching parse(::String, ::DateFormat{Symbol("yyyy-mm-dd HH:MM"),Tuple{Base.Dates.DatePart{'y'},Base.Dates.Delim{Char,1},Base.Dates.DatePart{'m'},Base.Dates.Delim{Char,1},Base.Dates.DatePart{'d'},Base.Dates.Delim{Char,1},Base.Dates.DatePart{'H'},Base.Dates.Delim{Char,1},Base.Dates.DatePart{'M'}}})
Closest candidates are:
parse(::AbstractString, ::Int64; greedy, raise) at parse.jl:215
parse(::AbstractString; raise) at parse.jl:230
Removido por # 19545
@shashi , podemos adicionar esse recurso de volta à nova estrutura de análise rápida? Caso contrário, deveria ser tecnicamente obsoleto, mas parece que fazê-lo funcionar seria ainda melhor, pois é útil.
@StefanKarpinski , estou tentando fazer com que uma versão funcione com 0,6
Comentários muito úteis
@StefanKarpinski , estou tentando fazer com que uma versão funcione com 0,6