PowerShell แยก Regex
นิพจน์ทั่วไป (regex) ใช้เพื่อกำหนดตัวกรอง ประกอบด้วยอักขระเพื่อกำหนดรูปแบบของข้อความที่จะจับคู่ ใน PowerShell เราสามารถใช้ตัวดำเนินการ แยก ของ PowerShell กับรูปแบบ regex เพื่อแยกสตริงออกเป็นหลายสตริงย่อย
ในตัวอย่างนี้ เราจะพูดถึงวิธีใช้ regex กับตัวดำเนินการแยก PowerShell และตัวอย่าง regex ของ PowerShell
PowerShell Split Regex Pattern เพื่อแยกสตริง
หากต้องการแยกสตริงออกเป็นหลายสตริงย่อยตามรูปแบบ regex ให้ใช้ตัวดำเนินการ split
ลองพิจารณาตัวอย่างเพื่อทำความเข้าใจสตริง PowerShell แยก regex พร้อมตัวอย่างวันที่
$sysdate = "01-08-2022"
# use Regex patter with split operator
$sysdate -split '(.*)-\d+-([^-]+)'ในสคริปต์ PowerShell ข้างต้น ตัวแปร $sysdate มีวันที่ เราต้องการแยกสตริงเพื่อรับองค์ประกอบแรกและสุดท้ายจากตัวอย่างสตริง วัน และปี
เราได้ใช้รูปแบบ regex (.*)-\d+-([^-]+) ที่จับคู่ข้อความในสตริงที่กำหนด และแยกสตริงเพื่อรับองค์ประกอบแรกและองค์ประกอบสุดท้าย
ผลลัพธ์ของสคริปต์ PowerShell ข้างต้นหลังจากใช้รูปแบบ regex แบบแยกคือ:
PS C:\> $sysdate -split '(.*)-\d+-([^-]+)'
01
2022PowerShell Regex แยกบนช่องว่าง
การใช้ตัวดำเนินการแยกกับรูปแบบ regex ทำให้คุณสามารถแยกสตริงด้วยช่องว่างออกเป็นหลายสตริงย่อยได้อย่างง่ายดาย
$my_text = "Hello! Welcome to ShellGeek"
$my_text -split "\s{1,}" ในสคริปต์ PowerShell ข้างต้น ตัวแปร $my_text จะจัดเก็บสตริงที่มี ช่องว่าง หนึ่งรายการขึ้นไป
ในการแยกสตริงบนช่องว่าง เราได้ใช้ตัวดำเนินการแยก PowerShell ที่มีรูปแบบ regex \s{1,}
รูปแบบ regex จับคู่ช่องว่างอย่างน้อย 1 รายการในสตริงที่กำหนด และแยกออกเป็นสตริงย่อยหลายรายการ
ผลลัพธ์ของ PowerShell split regex ข้างต้นบนอักขระช่องว่างคือ:
PS C:\> $my_text = "Hello! Welcome to ShellGeek"
PS C:\> $my_text -split "\s{1,}"
Hello!
Welcome
to
ShellGeek
PS C:\> เคล็ดลับเด็ด: วิธีแยกสตริงเพื่อรับองค์ประกอบสุดท้ายใน PowerShell!
บทสรุป
ฉันหวังว่าบทความข้างต้นเกี่ยวกับวิธีแยกสตริงโดยใช้รูปแบบ regex ใน PowerShell จะเป็นประโยชน์สำหรับคุณ
คุณสามารถค้นหาหัวข้อเพิ่มเติมเกี่ยวกับคำสั่ง PowerShell Active Directory และพื้นฐาน PowerShell ได้ในหน้าแรกของ ShellGeek
เนื้อหาที่แนะนำ
แยกสตริงเป็นความยาวคงที่ใน PowerShell
PowerShell แยกสตริงเป็นตัวแปร