פיענוח תאריך ממחרוזת

Elixir:
פיענוח תאריך ממחרוזת

איך לעשות:

ב-Elixir, ניתן לנתח תאריכים באמצעות המודול Date. הנה איך להפוך מחרוזת לתאריך:

date_string = "2023-04-05"
{:ok, date} = Date.from_iso8601(date_string)
IO.inspect(date)

דוגמה לפלט:

~D[2023-04-05]

כדי להתמודד עם פורמטים שונים, ניתן להשתמש בספריית Timex:

{:ok, datetime} = Timex.parse("05-04-2023", "{D}-{0M}-{YYYY}")
IO.inspect(datetime)

דוגמה לפלט:

#DateTime<2023-04-05 00:00:00Z>

צלילה עמוקה

הפונקציה Date.from_iso8601/1 היא חלק מספריית התקנים של Elixir, שהוצגה כדי להבטיח ניתוח פשוט של תקן התאריך ISO8601 - פורמט תאריך נפוץ. אך החיים לא כל כך פשוטים; תאריכים מגיעים בטונות של פורמטים. זה המקום שבו Timex, ספרייה צד שלישי של Elixir, מתמקמת. היא עשירה יותר מפונקציות התאריך המובנות של Elixir ועוזרת להתמודד עם מגוון רחב של פורמטי תאריך.

Elixir עצמה היא בלתי משתנה, מה שאומר שתאריכים שננתחו אינם יכולים להשתנות לאחר יצירתם. תכונה זו חוזרת לשורשי התכנות הפונקציונאלי של Elixir, מבטיחה צפיות וניפוי באגים קל יותר.

מבחינה היסטורית, ניתוח תאריכים היה משימה קשה בשל התקנים משתנים. עם זאת, בעזרת ספריות כמו Timex ותכונות שפה ב-Elixir, המורכבות הזו מוסתרת, מה שהופך את חיי המפתחים לפשוטים יותר.

ראה גם