Powershell - นิพจน์ทั่วไป
นิพจน์ทั่วไปคือลำดับพิเศษของอักขระที่ช่วยให้คุณจับคู่หรือค้นหาสตริงหรือชุดของสตริงอื่น ๆ โดยใช้ไวยากรณ์เฉพาะที่จัดขึ้นในรูปแบบ สามารถใช้เพื่อค้นหาแก้ไขหรือจัดการข้อความและข้อมูล
นี่คือตารางที่แสดงรายการไวยากรณ์ของนิพจน์ทั่วไป metacharacter ทั้งหมดที่มีอยู่ใน PowerShell -
| Subexpression | ตรงกัน |
|---|---|
| ^ | ตรงกับจุดเริ่มต้นของบรรทัด |
| $ | ตรงกับจุดสิ้นสุดของบรรทัด |
| . | จับคู่อักขระเดี่ยวใด ๆ ยกเว้นขึ้นบรรทัดใหม่ การใช้m ตัวเลือกช่วยให้ตรงกับบรรทัดใหม่เช่นกัน |
| [... ] | จับคู่อักขระเดี่ยวใด ๆ ในวงเล็บ |
| [^ ... ] | จับคู่อักขระเดี่ยวใด ๆ ที่ไม่อยู่ในวงเล็บ |
| \ ก | จุดเริ่มต้นของสตริงทั้งหมด |
| \ z | สิ้นสุดสตริงทั้งหมด |
| \ Z | สิ้นสุดสตริงทั้งหมดยกเว้นตัวยุติบรรทัดสุดท้ายที่อนุญาต |
| re * | จับคู่ 0 หรือมากกว่าที่เกิดขึ้นของนิพจน์ก่อนหน้า |
| re + | ตรงกับสิ่งก่อนหน้าอย่างน้อย 1 อย่าง |
| รี? | จับคู่ 0 หรือ 1 ครั้งของนิพจน์ก่อนหน้า |
| อีกครั้ง {n} | ตรงกับจำนวนครั้งที่เกิดขึ้นของนิพจน์ก่อนหน้า |
| re {n,} | จับคู่ n เหตุการณ์ขึ้นไปของนิพจน์ก่อนหน้า |
| ใหม่ {n, m} | จับคู่อย่างน้อย n และมากที่สุด m ที่เกิดขึ้นของนิพจน์ก่อนหน้า |
| ก | ข | จับคู่ a หรือ b |
| (อีกครั้ง) | จัดกลุ่มนิพจน์ทั่วไปและจดจำข้อความที่ตรงกัน |
| (?: re) | จัดกลุ่มนิพจน์ทั่วไปโดยไม่จำข้อความที่ตรงกัน |
| (?> อีกครั้ง) | จับคู่รูปแบบอิสระโดยไม่ต้องย้อนรอย |
| \ w | จับคู่อักขระคำ |
| \ ว | จับคู่อักขระที่ไม่ใช่คำหลัก |
| \ s | ตรงกับช่องว่าง เทียบเท่ากับ [\ t \ n \ r \ f] |
| \ S | ตรงกับ nonwhitespace |
| \ d | ตรงกับตัวเลข เทียบเท่ากับ [0-9] |
| \ D | ตรงกับ nondigits |
| \ ก | ตรงกับจุดเริ่มต้นของสตริง |
| \ Z | ตรงกับจุดสิ้นสุดของสตริง หากมีขึ้นบรรทัดใหม่จะตรงกับก่อนขึ้นบรรทัดใหม่ |
| \ z | ตรงกับจุดสิ้นสุดของสตริง |
| \ G | ตรงกับจุดที่นัดสุดท้ายจบ |
| \ n | อ้างอิงย้อนกลับเพื่อจับหมายเลขกลุ่ม "n" |
| \ b | จับคู่ขอบเขตของคำเมื่ออยู่นอกเครื่องหมายวงเล็บ จับคู่ backspace (0x08) เมื่ออยู่ในวงเล็บ |
| \ B | ตรงกับขอบเขตที่ไม่ใช่คำ |
| \ n, t ฯลฯ | จับคู่การขึ้นบรรทัดใหม่การคืนค่าขนส่งแท็บ ฯลฯ |
| \ Q | Escape (quote) อักขระทั้งหมดไม่เกิน \ E |
| \ E | สิ้นสุดการอ้างอิงเริ่มต้นด้วย \ Q |
นี่คือตัวอย่างทั้งหมดที่แสดงวิธีใช้ regex ใน PowerShell
| ซีเนียร์ | จับคู่และคำอธิบาย |
|---|---|
| 1 | จับคู่อักขระ ตัวอย่างอักขระนิพจน์ทั่วไปที่รองรับ |
| 2 | จับคู่คลาสตัวละคร ตัวอย่างคลาสอักขระที่รองรับ |
| 3 | จับคู่ Quantifiers ตัวอย่างปริมาณที่รองรับ |