Elixir:
การแยกวันที่ออกจากสตริง
วิธีการ:
ไลบรารีมาตรฐานของ Elixir รวมถึงพลังของโมดูล :calendar
ของ Erlang ให้การสนับสนุนพื้นฐานสำหรับการแยกวันที่ สำหรับความต้องการที่ซับซ้อนมากขึ้น ไลบรารี Timex
เป็นทางเลือกที่ได้รับความนิยม นำเสนอคุณสมบัติอย่างกว้างขวางสำหรับการทำงานกับวันที่ เวลา และเขตเวลา
ใช้ไลบรารีมาตรฐานของ Elixir
date_string = "2023-04-21"
{:ok, date} = Date.from_iso8601(date_string)
IO.inspect(date) # => ~D[2023-04-21]
เพื่อการทำเลียวเวลาที่รวมข้อมูลเขตเวลา คุณอาจใช้ฟังก์ชันของ Erlang โดยตรง เนื่องจากการจัดการเขตเวลาโดยตรงไม่ได้เป็นส่วนหนึ่งของโมดูลวันที่มาตรฐานของ Elixir
datetime_string = "2023-04-21T15:30:00Z"
{:ok, datetime, 0} = DateTime.from_iso8601(datetime_string)
IO.inspect(datetime) # => #DateTime<2023-04-21 15:30:00Z>
การใช้ Timex
ขั้นแรก เพิ่ม Timex
เข้าไปใน dependencies ของคุณใน mix.exs:
def deps do
[
{:timex, "~> 3.7"}
]
end
จากนั้น ให้รัน mix deps.get
เพื่อดึง dependency ใหม่
นี่คือวิธีการใช้ Timex เพื่อแยกวันที่จากสตริง:
import Timex
date_string = "April 21, 2023"
date = Timex.parse!(date_string, "{Mfull} {D}, {YYYY}")
IO.inspect(date) # => ~N[2023-04-21 00:00:00]
Timex ช่วยในการแยกวิเคราะห์รูปแบบต่างๆ และยังรองรับวันที่ภาษาพูดได้ ทำให้มีความยืดหยุ่นสูงในการแยกวิเคราะห์วันที่และเวลาจากข้อมูลที่ผู้ใช้ป้อนหรือแหล่งข้อมูลภายนอก