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, โปรแกรมเมอร์สามารถดำเนินการตรวจสอบข้อความที่ซับซ้อนได้อย่างมีประสิทธิภาพ