hassanRsiddiqi
Timex parsing format 22-AUG-18
Hi,
I’m having hard time parsing a date format: 22-AUG-18 while using {:timex, "~> 3.6"} , solution I have tried:
Timex.parse(“22-AUG-18”, “{D}-{WDshort}-{YYYY}”)
{:error, “Expectedweekday abbreviationat line 1, column 4.”}
Timex.parse(“22-AUG-18”, “{D}-{Mshort}-{YY}”)
{:error, “Expectedmonth abbreviationat line 1, column 7.”}
Timex.parse!(“22-AUG-18”, “%d-%^b-%y”)
Timex.parse!(“22-AUG-18”, “%d-%b-%y”)
Thanks in advance
Marked As Solved
outlog
"22-AUG-18"
|> String.split("-")
|> Enum.map(&String.capitalize(&1))
|> Enum.join("-")
|> Timex.parse("{D}-{Mshort}-{YY}")
@OvermindDL1 great to have you back!
Also Liked
Marcus
You can also use datix and tox:
iex> months = [ "JAN", "FEB", "MAR", "APR", "MAY", "JUN", "JUL", "AUG", "SEP", "OCT", "NOV", "DEC" ]
iex> format = "%d-%b-%y"
iex> parse = fn(date) ->
...> date
...> |> Datix.Date.parse!(format, abbreviated_month_names: months)
...> |> Tox.Date.shift(year: 2000)
...> end
iex> date = parse.("22-AUG-18")
~D[2018-08-22]
iex> Calendar.strftime(date, format, abbreviated_month_names: fn x -> Enum.at(months, x - 1) end)
"22-AUG-18"
OvermindDL1
Yep, that’s exactly the mapping before hand, quite easy. ^.^
Baby is so busy! Trying to be a toddler already!
Yeah it would be pretty trivial to finish it off by piping into a case and matching on the elements and parsing the strings to integers and such with a map mapping from months to a month integer.
hauleth
As you went that far with manual parsing, then I would finish it manually instead of using Timex. Especially if you do not use any other Timex features
Popular in Questions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance









