Phân tích ngày từ chuỗi kí tự

Lua:
Phân tích ngày từ chuỗi kí tự

Cách thực hiện:

Lua không có parser ngày được tích hợp sẵn, nhưng bạn có thể thực hiện công việc với os.time và khớp mẫu. Giả sử bạn có một chuỗi ngày date_str và bạn muốn chuyển nó thành một bảng mà Lua có thể xử lý:

local date_str = "2023-04-05" -- Định dạng ISO 8601
local pattern = "(%d+)-(%d+)-(%d+)"
local year, month, day = date_str:match(pattern)
local date_table = {year = year, month = month, day = day}

print(os.time(date_table)) -- Ví dụ đầu ra: 1679785200

Và đó là ngày của bạn, đã được phân tích cú pháp và sẵn sàng!

Khám Phá Sâu

Lua khá tối giản, vì vậy để phân tích cú pháp ngày, bạn thường tự tạo giải pháp của mình hoặc sử dụng một thư viện. Trong lịch sử, việc xử lý ngày trong Lua chủ yếu là thủ công, liên quan đến việc khớp mẫu chuỗi và các hàm os.dateos.time.

Nếu bạn không muốn tự mình tạo ra bánh xe, hãy xem các thư viện như Penlight hoặc date.lua. Những thư viện này cung cấp cho bạn nhiều linh hoạt và sức mạnh hơn khi xử lý ngày.

Về việc triển khai, hãy nhớ rằng khớp mẫu của Lua không phải là regex; nó đơn giản hơn và đôi khi điều đó có nghĩa là bạn cần nhiều công sức hơn để phân tích cú pháp các định dạng ngày phức tạp. Luôn kiểm tra kỹ các mẫu của bạn!

Xem Thêm