ค้นหาเว็บไซต์

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 ได้ที่นี่

บทความที่เกี่ยวข้อง