7 ส.ค. 2022 เวลา 06:06 • การศึกษา
EP9:: regex ::
ตอนนี้จะเป็นการทำความรู้จักกับ regex หรือว่าชื่อเต็มๆคือ regular expression ซึ่งเรามักใช้เอาไว้ในการค้นหาหรือกำหนดการใส่ข้อมูลให้ตรงตามที่เราต้องการ
สำหรับโปรแกรม python เองก็มี module สำหรับใช้งานมาให้แต่ต้อง import เข้ามาก่อน นั้นคือ module re
☑️ โดยเราจะใส่ไว้ที่หัวของfile .py ❇️❇️
ในตัวอย่างจะเป็นการค้นหาคำใน srting ในที่นี้กำหนดตัวแปรเป็น text
ในบรรทัดที่ 3 จะเป็นการบันทึก คำที่ขึ้นต้นด้วย “the” ลงไปในตัวแปรแบบ list นั้นคือ x โดยการค้นหาทั้งหมด ในtext ใช้คำสั่ง findall ค่าพารามิเตอร์ มีสองตัวคือ ค้นหา และตัวtext ที่ต้องการหา
สัญญาลักษณ์ \A ก่อนคำค้นหา the คือการให้โปรแกรมค้นหา คำที่มีคำว่าthe ขึ้นต้น ส่วน คำสั่งที่น่าสนใจอื่นๆมีดังนี้
  • Set [ ] ใช้คำสั่งตัวอย่าง [a-z] จะเป็นการกำหนดค้นหาตั้งแต่ ตัวa ถึงตัว z (เฉพาะตัวเล็ก)
  • \ ใช้หาตัวอักษรพิเศษ เช่นหากเราใช้ \d จะเป็นการหาเลข digit ในประโยค เป็นต้น
  • .. ใช้หาคำที่ขึ้นต้นและลงท้าย ด้วยตัวอักษรระหว่างจุดๆ เช่น he..o หากมีคำว่า hello ในประโยค โปรแกรมก็จะค้นเจอ โดยจำนวนจุดจะแทนตัวอักษร
  • .* ตัวนี้ใช้สำหรับค้นหาทุกตัวอักษรที่มี อยู่ระหว่าง .* เช่น th.*er อาจจะได้คำว่า “theborther” เป็นต้น
  • ^ ใช้สำหรับอักษรตัวแรก $ ใช้สำหรับระบุตัวอักษรสุดท้ายที่ค้นหา
  • {} ใช้ระบุ ตัวเลขด้านในเช่น {2} เพื่อระบุว่าภายในคำที่ต้องการค้นหากี่คำ
  • ส่วนอื่นๆยังมีอีกแต่ไม่ค่อยนิยมใช้ ลองไปหากันเอง
เอาละเรากลับมาที่ฟังก์ชั่นกันก่อน ตอนนี้เราเรียนแค่ findall สำหรับค้นหา ส่วนอื่นๆมีรายการดังนี้
  • Search () คือฟังก์ชั่นที่ใช้ค้นหาสตริงที่เหมือนกัน และจะคืนค่า เป็น object
  • Split () คือฟังก์ชั่นที่ใช้ค้นหาและแบ่ง คำที่ค้นหาเจอตามที่เรากำหนด โดยจะคืนค่าเป็น list นอกจากนี้ยังสามารถกำหนดจำนวนมากที่สุดได้
  • Sub() เป็นฟังก์ชั่นที่หลังจากค้นคำที่เราต้องการเจอแล้ว จะทำการแทนที่ด้วยคำที่เรากำหนด นอกจากนี้ยังสามารถกำหนเฝดจำนวนที่แทนที่ได้ด้วย count พารามิเตอร์
โฆษณา