Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

อักขระเมตาดาต้าภายในคลาสอักขระที่ใช้ในนิพจน์ทั่วไปของ Python คืออะไร


ตัวอักษรและอักขระส่วนใหญ่จับคู่กันเองเท่านั้น อย่างไรก็ตาม มีอักขระบางตัวที่เรียกว่า metacharacters ซึ่งไม่ตรงกับตัวเอง แต่กลับบ่งชี้ว่ารูปแบบบางอย่างควรตรงกัน หรือทำซ้ำหรือเปลี่ยนบางส่วนของนิพจน์ทั่วไป

นี่คือรายการทั้งหมดของ metacharacters

<ก่อน>. ^ $ * + ? { } [ ] \ | ( )

ตอนแรกเราจะดู [ และ ] ใช้สำหรับระบุคลาสอักขระ ซึ่งเป็นชุดอักขระที่คุณต้องการจับคู่ อักขระสามารถระบุได้ทีละตัว หรือระบุช่วงของอักขระได้โดยการใส่อักขระสองตัวและคั่นด้วย '-' ตัวอย่างเช่น [xyz] จะจับคู่อักขระ x, y หรือ z ใดๆ ซึ่งเหมือนกับ [x-z] ซึ่งใช้ช่วงเพื่อแสดงชุดอักขระชุดเดียวกัน หากคุณต้องการจับคู่เฉพาะตัวอักษรพิมพ์เล็ก regex ของคุณจะเป็น [a-z]

Metacharacters ไม่ทำงานในชั้นเรียน ตัวอย่างเช่น [abc$] จะจับคู่อักขระ 'a', 'b', 'c' หรือ '$' '$' เป็นเมตาคาแรคเตอร์ แต่ภายในคลาสของคาแรคเตอร์ จะถูกถอดจากลักษณะพิเศษของมัน

หากมี '^' เป็นอักขระตัวแรกของคลาส แสดงว่าอักขระทั้งหมดที่ไม่ใช่ของคลาสนี้ ตัวอย่างเช่น [^8] จะจับคู่อักขระใดก็ได้ยกเว้น '8'

บางที metacharacter ที่สำคัญที่สุดคือแบ็กสแลช \ นอกจากนี้ยังใช้เพื่อหลีกหนีจากอักขระเมตาทั้งหมด ดังนั้นคุณจึงยังสามารถจับคู่พวกมันในรูปแบบต่างๆ ได้ ตัวอย่างเช่น หากคุณต้องการจับคู่ ] หรือ \ คุณสามารถนำหน้าด้วยเครื่องหมายแบ็กสแลชเพื่อลบความหมายพิเศษ:\] หรือ \\.