กลุ่มจับคู่และการแทนที่
ดึงส่วนที่ตรงกันออกมาและเขียนใหม่
กลุ่มจับคู่และการแทนที่ เป็นบทเรียน NLP Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน NLP Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส NLP Academy มีบทเรียนทั้งหมด 4 บทเรียน
ดึงส่วนต่าง ๆ ของการจับคู่
กลุ่มจับภาพจะครอบส่วนหนึ่งของรูปแบบไว้ในวงเล็บ เพื่อให้คุณดึงเฉพาะส่วนนั้นออกมาแทนที่จะดึงการจับคู่ทั้งหมด
re.search("(\d+)-(\d+)", "12-34")อ่านกลุ่มด้วยหมายเลข
หลังการจับคู่ group(1) จะคืนส่วนแรกที่อยู่ในวงเล็บ group(2) จะคืนส่วนที่สอง และ group(0) จะคืนสตริงที่จับคู่ได้ทั้งหมด
m.group(1) # first groupการจับคู่หลายรายการด้วยกลุ่ม
เมื่อใช้ findall ร่วมกับกลุ่ม ผลลัพธ์แต่ละรายการจะกลายเป็นทูเพิลของส่วนที่จับภาพไว้ ทำให้รวบรวมข้อมูลที่มีโครงสร้างได้ง่าย
re.findall("(\w+)=(\w+)", "a=1 b=2")ตั้งชื่อให้กลุ่ม
คุณสามารถตั้งชื่อให้กลุ่มเพื่อให้โค้ดอ่านง่ายขึ้น ภายหลังให้เข้าถึงกลุ่มด้วยชื่อนั้นแทนการจำหมายเลข
re.search("(?P<year>\d{4})", "2026")แทนที่ข้อความด้วย re.sub
ฟังก์ชัน re.sub จะค้นหาการจับคู่ทั้งหมดและแทนที่ด้วยข้อความที่คุณเลือก นี่คือการค้นหาและแทนที่ที่ขับเคลื่อนด้วยรูปแบบ
re.sub("\d+", "#", "a1 b22")นำส่วนที่จับภาพมาใช้ซ้ำในการแทนที่
ภายในการแทนที่ คุณสามารถอ้างอิงกลุ่มที่จับภาพไว้ด้วย \1 วิธีนี้ช่วยให้คุณสลับลำดับหรือเขียนข้อความที่จับคู่ใหม่ได้ทันที
re.sub("(\w+) (\w+)", "\2 \1", "hi there")ปกปิดข้อมูลละเอียดอ่อน
การใช้งานทั่วไปของ re.sub คือการปกปิดข้อมูล จับคู่หมายเลขโทรศัพท์หรืออีเมล แล้วแทนที่แต่ละรายการด้วยตัวแทน เช่น แถวของเครื่องหมายดอกจัน
แทนที่ด้วยฟังก์ชัน
สำหรับการแก้ไขที่ซับซ้อน ให้ส่งฟังก์ชันไปยัง re.sub ฟังก์ชันจะได้รับการจับคู่แต่ละรายการและคืนค่าที่ใช้แทนที่ ทำให้คุณคำนวณผลลัพธ์แยกตามการจับคู่ได้
กลุ่มที่ไม่จับภาพ
บางครั้งคุณจัดกลุ่มเพียงเพื่อใช้ตัวระบุจำนวน ไม่ได้ต้องการจับภาพ กลุ่มที่ไม่จับภาพจะเริ่มด้วย ?: จึงไม่ทำให้ผลลัพธ์ยุ่งเหยิง
นับจำนวนการแทนที่
ใช้ re.subn แทน re.sub เพื่อรับทั้งสตริงใหม่และจำนวนการแทนที่ที่เกิดขึ้นจริง
re.subn("a", "X", "banana")กลุ่มทำให้ข้อมูลมีโครงสร้าง
กลุ่มจับภาพจะเปลี่ยนข้อความดิบให้เป็นฟิลด์ที่มีโครงสร้าง สตริงวันที่จะกลายเป็นปี เดือน และวันที่คุณสามารถจัดเก็บหรือเปรียบเทียบได้โดยตรง
ตรวจสอบอย่างรวดเร็ว
คุณจับคู่วันที่ทั้งหมดไว้แล้ว และต้องการเฉพาะส่วนปีที่ครอบไว้ในวงเล็บ คุณจะอ่านส่วนนั้นอย่างไร
สรุปทบทวน: จับภาพและเขียนใหม่
คุณได้เรียนรู้กลุ่มจับภาพ กลุ่มที่มีชื่อ และ re.subแล้ว เมื่อใช้ร่วมกัน สิ่งเหล่านี้ช่วยให้คุณดึงฟิลด์ที่แม่นยำและเขียนข้อความใหม่ได้ในรอบเดียวอย่างเป็นระเบียบ ✨
คำถามที่พบบ่อย
บทเรียน “กลุ่มจับคู่และการแทนที่” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “กลุ่มจับคู่และการแทนที่” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส NLP Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส NLP Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “กลุ่มจับคู่และการแทนที่”
ดึงส่วนที่ตรงกันออกมาและเขียนใหม่ คุณปฏิบัติ NLP Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน NLP Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน NLP Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “กลุ่มจับคู่และการแทนที่” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน NLP Academy นี้ได้ไหม
ได้ บทเรียน NLP Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- Regex ใน 5 นาที
- ค้นหาอีเมลและ URL
- กลุ่มจับคู่และการแทนที่
- เคล็ดลับการสร้างโทเคนด้วย Regex