Bắt đầu ngayBắt đầu miễn phí

RegEx trong Python

Trích xuất thông tin dựa trên luật (rule-based) hữu ích cho nhiều tác vụ NLP. Một số loại thực thể như ngày tháng hoặc số điện thoại có định dạng rõ ràng và có thể nhận diện bằng một tập luật mà không cần huấn luyện bất kỳ mô hình nào. Trong bài tập này, bạn sẽ luyện tập dùng gói re cho RegEx. Mục tiêu là tìm các số điện thoại trong text đã cho.

Gói re đã được nhập sẵn để bạn sử dụng. Bạn có thể dùng \d để khớp các mẫu chuỗi đại diện cho metacharacter khớp với bất kỳ chữ số nào từ 0 đến 9.

Bài tập này là một phần của khóa học

Xử lý ngôn ngữ tự nhiên với spaCy

Xem khóa học

Hướng dẫn bài tập

  • Định nghĩa một mẫu để khớp số điện thoại theo dạng (111)-111-1111.
  • Tìm tất cả các mẫu khớp bằng phương thức re.finditer().
  • Với mỗi kết quả khớp, in ra vị trí ký tự bắt đầu và kết thúc, cùng đoạn văn bản khớp trong text đã cho.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

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[____:____])
Chỉnh sửa và Chạy Mã