Swift:
การแยกวันที่ออกจากสตริง
วิธีการ:
การใช้ DateFormatter
ของ Foundation
ไลบรารีมาตรฐานของ Swift คือ Foundation มี DateFormatter
สำหรับการแปลงสตริงเป็นอ็อบเจกต์ Date
และในทางกลับกัน เพื่อแยกวิเคราะห์วันที่จากสตริง คุณต้องระบุรูปแบบวันที่ที่ตรงกับสตริง จากนั้นใช้ฟอร์แมตเตอร์เพื่อแยกวิเคราะห์มัน
import Foundation
let dateString = "2023-04-30"
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd"
if let date = formatter.date(from: dateString) {
print("วันที่ที่แยกวิเคราะห์ได้: \(date)")
} else {
print("ไม่สามารถแยกวิเคราะห์วันที่ได้")
}
// ตัวอย่างผลลัพธ์: วันที่ที่แยกวิเคราะห์ได้: 2023-04-29 22:00:00 +0000
โปรดทราบว่าผลลัพธ์อาจแตกต่างกันขึ้นอยู่กับเขตเวลาของคุณ
การใช้ ISO8601DateFormatter
สำหรับรูปแบบวันที่ ISO 8601, Swift มีฟอร์แมตเตอร์เฉพาะ ISO8601DateFormatter
, ซึ่งทำให้กระบวนการแยกวิเคราะห์ง่ายขึ้น
import Foundation
let dateString = "2023-04-30T15:00:00+00:00"
let isoFormatter = ISO8601DateFormatter()
if let date = isoFormatter.date(from: dateString) {
print("วันที่ ISO8601 ที่แยกวิเคราะห์ได้: \(date)")
} else {
print("ไม่สามารถแยกวิเคราะห์วันที่ ISO8601 ได้")
}
// ตัวอย่างผลลัพธ์: วันที่ ISO8601 ที่แยกวิเคราะห์ได้: 2023-04-30 15:00:00 +0000
การใช้ไลบรารีภายนอก: SwiftDate
แม้ว่า Swift จะมีเครื่องมือที่เข้มแข็งสำหรับการแยกวิเคราะห์วันที่ แต่ไลบรารีภายนอกเช่น SwiftDate มอบความยืดหยุ่นและความสะดวกในการใช้งานที่ยิ่งขึ้น หลังจากเพิ่ม SwiftDate เข้ากับโปรเจกต์ของคุณ การแยกวิเคราะห์จะเป็นเรื่องง่ายเช่น:
import SwiftDate
let dateString = "April 30, 2023"
if let date = dateString.toDate("MMMM dd, yyyy") {
print("วันที่ที่แยกวิเคราะห์ได้ด้วย SwiftDate: \(date)")
} else {
print("ไม่สามารถแยกวิเคราะห์วันที่ด้วย SwiftDate ได้")
}
// ตัวอย่างผลลัพธ์: วันที่ที่แยกวิเคราะห์ได้ด้วย SwiftDate: 2023-04-30 00:00:00 +0000
SwiftDate ทำให้การแยกวิเคราะห์เป็นเรื่องง่ายด้วยภาษาธรรมชาติและรูปแบบวันที่ที่หลากหลาย ทำให้เป็นเครื่องมือที่ทรงพลังในการเขียนโปรแกรม Swift ของคุณ