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

วิธีใช้ Named Groups ใน Python Regular Expression

Named Groups (กลุ่มที่มีชื่อ)

Regex engine รุ่นใหม่รองรับ numbered capturing groups และ backreferences แต่ regex ยาวที่มีหลายกลุ่มและ backreferences อ่านและเข้าใจยาก การเพิ่ม/ลบกลุ่มกลาง regex จะรบกวนหมายเลขกลุ่มที่ตามมา

โมดูล re ของ Python เป็นตัวแรกที่เสนอ named capturing groups และ named backreferences รูปแบบ (?P<name>group) จับคู่ group เก็บไว้ใน backreference ชื่อ "name" name ต้องเป็น alphanumeric เริ่มด้วยตัวอักษร group เป็น regex ใดก็ได้ อ้างอิงเนื้อหากลุ่มด้วย named backreference (?P=name) เครื่องหมาย ?, P, angle brackets, และ = เป็นส่วนหนึ่งของ syntax แม้ named backreference จะใช้วงเล็บ แต่ไม่ได้ทำ capturing หรือ grouping

ตัวอย่าง HTML tags: <(?P<tag>[A-Z][A-Z0-9]*)\b[^>]*>.*?</(?P=tag)>