การใช้เรกุลาร์เอ็กเพรสชัน

PowerShell:
การใช้เรกุลาร์เอ็กเพรสชัน

วิธีใช้:

ใน PowerShell, คุณสามารถใช้ operators -match, -replace, และ -split, รวมถึงอื่นๆ ในการดำเนินการกับ regular expressions ได้ ลองดูตัวอย่างเหล่านี้:

การใช้ -match เพื่อตรวจสอบว่าสตริงตรงกับรูปแบบหรือไม่

Operator นี้จะคืนค่า $true หากพบรูปแบบนั้นภายในสตริง และ $false หากไม่พบ

"hello world" -match "\w+orld"
# ผลลัพธ์: True

การดึงค่าที่ตรงกัน

คุณสามารถดึงค่าที่ตรงกันโดยการเข้าถึงตัวแปรอัตโนมัติ $matches.

if ("I have 100 apples" -match "\d+") {
    "พบตัวเลข: " + $matches[0]
}
# ผลลัพธ์: พบตัวเลข: 100

การใช้ -replace สำหรับการแทนที่

Operator -replace จะแทนที่ทุกครั้งที่พบรูปแบบด้วยสตริงที่ระบุ

"foo bar baz" -replace "ba[rz]", "qux"
# ผลลัพธ์: foo qux qux

การแยกสตริงด้วย -split

แยกสตริงออกเป็นอาร์เรย์ของสตริงย่อยตามรูปแบบ regex

"The quick-brown_fox jumps" -split "[-_ ]"
# ผลลัพธ์: The quick brown fox jumps

การจับคู่รูปแบบขั้นสูง

PowerShell ยังรองรับการดำเนินการ regex ที่ซับซ้อนมากขึ้นผ่านคลาส [regex] ที่ให้คุณเข้าถึงเมธอดอย่าง Matches(), Replace(), และ Split().

[regex]::Matches("June 24, August 9, Dec 12", "\b[A-Za-z]+\b").Value
# ผลลัพธ์: June August Dec

[regex]::Replace("100,000", "\B(?=(?:\d{3})+(?!\d))", ",")
# ผลลัพธ์: 100,000

[regex]::Split("one,two;three four", ",|;| ")
# ผลลัพธ์: one two three four

ตัวอย่างเหล่านี้แสดงถึงพลังและความหลากหลายของ regular expressions ใน PowerShell สำหรับการจัดการข้อมูลและการจับคู่รูปแบบ โดยการใช้ประโยชน์จาก regex, โปรแกรมเมอร์สามารถดำเนินการตรวจสอบข้อความที่ซับซ้อนได้อย่างมีประสิทธิภาพ