PowerShell: วิธีตรวจสอบว่าสตริงมีวันที่หรือไม่
คุณสามารถใช้ไวยากรณ์ต่อไปนี้ใน PowerShell เพื่อตรวจสอบว่าสตริงมีวันที่หรือไม่:
[boolean]($my_string -as [DateTime])
ตัวอย่างนี้จะตรวจสอบว่าตัวแปรสตริงชื่อ $my_string มีวันที่และส่งกลับผลลัพธ์เป็น True หรือ False
นี่คือวิธีการทำงานของไวยากรณ์นี้:
ขั้นแรก เราพยายามแปลงตัวแปรสตริงชื่อ $my_string เป็นอ็อบเจ็กต์ DateTime
จากนั้นเราใช้คำสั่ง [boolean] เพื่อบังคับให้เอาต์พุตเป็น True หากสตริงสามารถแปลงเป็นวันที่หรือ False ได้สำเร็จ มิฉะนั้น.
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติในสถานการณ์ที่แตกต่างกัน
ตัวอย่าง: ตรวจสอบว่าสตริงมีวันที่ใน PowerShell หรือไม่
สมมติว่าเราสร้างสตริงหลายรายการชื่อ $string1, $string2 และ $string3 ใน PowerShell:
$string1 = "July 4, 2024"
$string2 = "7/4/2024"
$string3 = "Zach"
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อตรวจสอบว่าแต่ละสตริงมีวันที่หรือไม่:
[boolean]($string1 -as [DateTime])
[boolean]($string2 -as [DateTime])
[boolean]($string3 -as [DateTime])
ภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:
จากผลลัพธ์เราจะเห็นได้ว่า:
- สตริง “4 กรกฎาคม 2024” ส่งคืน True เนื่องจากมีวันที่
- สตริง “7/4/2024” ส่งคืน True เนื่องจากมีวันที่
- สตริง “Zach” ส่งคืน False เนื่องจากไม่มีวันที่
หมายเหตุ: คุณสามารถดูเอกสารฉบับสมบูรณ์สำหรับตัวดำเนินการ -as ใน PowerShell ได้ที่นี่
