เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

RegEx ใน Python

การดึงข้อมูลแบบใช้กฎ (rule-based) มีประโยชน์สำหรับงาน NLP หลายประเภท เอนทิตีบางชนิด เช่น วันที่หรือหมายเลขโทรศัพท์ มีรูปแบบที่ชัดเจนและสามารถจดจำได้ด้วยชุดกฎโดยไม่ต้องฝึกโมเดลใดๆ ในแบบฝึกหัดนี้ จะได้ฝึกใช้แพ็กเกจ re สำหรับ RegEx โดยมีเป้าหมายคือค้นหาหมายเลขโทรศัพท์ใน text ที่กำหนดให้

แพ็กเกจ re ถูก import ไว้ให้แล้ว สามารถใช้ \d เพื่อจับคู่รูปแบบสตริงที่แทนเมตาแคแร็กเตอร์ซึ่งตรงกับตัวเลขใดๆ ตั้งแต่ 0 ถึง 9

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การประมวลผลภาษาธรรมชาติด้วย spaCy

ดูคอร์ส

คำแนะนำการฝึกหัด

  • กำหนดรูปแบบเพื่อจับคู่หมายเลขโทรศัพท์ในรูปแบบ (111)-111-1111
  • ค้นหารูปแบบที่ตรงกันทั้งหมดโดยใช้เมธอด re.finditer()
  • สำหรับแต่ละผลลัพธ์ที่จับคู่ได้ ให้พิมพ์ตำแหน่งเริ่มต้น ตำแหน่งสิ้นสุด และส่วนของ text ที่ตรงกับรูปแบบ

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

text = "Our phone number is (425)-123-4567."

# Define a pattern to match phone numbers
pattern = r"\((____){____}\)-(____){____}-(____){____}"

# Find all the matching patterns in the text
phones = re.____(pattern, text)

# Print start and end characters and matching section of the text
for match in phones:
    start_char = match.____
    end_char = match.____
    print("Start character: ", ____, "| End character: ", ____, "| Matching text: ", text[____:____])
แก้ไขและรันโค้ด