การแยกวันที่ออกจากสตริง

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 ช่วยในการแยกวิเคราะห์รูปแบบต่างๆ และยังรองรับวันที่ภาษาพูดได้ ทำให้มีความยืดหยุ่นสูงในการแยกวิเคราะห์วันที่และเวลาจากข้อมูลที่ผู้ใช้ป้อนหรือแหล่งข้อมูลภายนอก