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

PowerShell: วิธีแยกสตริงโดยใช้ตัวคั่นหลายตัว


คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้ใน PowerShell เพื่อแยกสตริงตามตัวคั่นที่เป็นไปได้หลายตัว:

$my_string.split(",;|")

ตัวอย่างนี้จะแยกตัวแปรสตริงชื่อ $my_string ตามตำแหน่งที่มีตัวคั่นต่อไปนี้เกิดขึ้น:

  • ,
  • ;
  • |

โปรดทราบว่าเมธอด split จะแยกสตริงโดยใช้อักขระทุกตัวในวงเล็บ

หากคุณต้องการแยกสตริงใดสตริงหนึ่งแทน คุณสามารถใช้ตัวดำเนินการ -split แทนได้:

$my_string -split(",;|")

ตัวอย่างนี้จะแยกเฉพาะตัวแปรสตริงชื่อ $my_string โดยที่อักขระ ,;| ทั้งหมดเกิดขึ้นพร้อมกัน

ตัวอย่างต่อไปนี้แสดงวิธีการแยกสตริงตามตัวคั่นหลายตัวในทางปฏิบัติ

ตัวอย่าง: วิธีแยกสตริงโดยใช้ตัวคั่นหลายตัวใน PowerShell

สมมติว่าเรากำหนดตัวแปรสตริงชื่อ $teams ใน PowerShell ซึ่งมีชื่อของทีมบาสเก็ตบอลต่างๆ คั่นด้วยตัวคั่นต่างๆ

เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อแยกตัวแปรสตริงตามตำแหน่งที่ตัวคั่นต่อไปนี้เกิดขึ้น:

  • ,
  • ;
  • |
$teams = "Mavs,Nets,Hawks;Kings|Lakers,Cavs"
$teams.split(",;|")

ภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:

โปรดสังเกตว่าสตริงถูกแบ่งตามตำแหน่งที่มีตัวคั่นทั้งสามตัวเกิดขึ้น

หมายเหตุ: หากไวยากรณ์นี้ไม่ทำงานใน PowerShell 7 คุณอาจจำเป็นต้องใช้ไวยากรณ์ต่อไปนี้แทน:

$teams.split(",;|".ToCharArray())

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