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

Làm ơn đóng thẻ!

Trong lúc này, bạn đang làm một dự án khác. Công ty sắp phát triển một sản phẩm mới giúp lập trình viên tự động kiểm tra mã họ đang viết. Bạn cần viết một đoạn script ngắn để kiểm tra rằng mọi thẻ HTML mở đều có thẻ đóng tương ứng.

Bạn có một ví dụ chuỗi chứa thẻ HTML:

<title>The Data Science Company</title>

Bạn biết rằng thẻ HTML mở luôn ở đầu chuỗi. Nó xuất hiện bên trong <>. Thẻ đóng cũng xuất hiện trong <>, nhưng có dấu / đứng trước.

Bạn cũng nhớ rằng có thể tham chiếu lại các nhóm bắt bằng số, ví dụ \4.

Danh sách html_tags, chứa ba chuỗi với các thẻ HTML, và mô-đun re đã được nạp trong phiên của bạn. Bạn có thể dùng print() để xem dữ liệu trong IPython Shell.

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

Regular Expressions in Python

Xem khóa học

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

  • Hoàn thiện regex để khớp các thẻ HTML đã được đóng. Tìm xem có khớp hay không trong mỗi chuỗi của danh sách html_tags. Gán kết quả vào match_tag.
  • Nếu tìm được khớp, in nhóm đầu tiên được bắt và lưu trong match_tag.
  • Nếu không có khớp, hãy hoàn thiện regex để chỉ khớp phần văn bản bên trong thẻ HTML. Gán nó vào notmatch_tag.
  • In nhóm đầu tiên được regex bắt và lưu trong notmatch_tag.

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.

for string in html_tags:
    # Complete the regex and find if it matches a closed HTML tags
    match_tag =  re.match(____"<____>.*?", ____)
 
    if match_tag:
        # If it matches print the first group capture
        print("Your tag {} is closed".format(match_tag.____(____))) 
    else:
        # If it doesn't match capture only the tag 
        notmatch_tag = re.match(____"<____>", ____)
        # Print the first group capture
        print("Close your {} tag!".format(notmatch_tag.____(____)))
Chỉnh sửa và Chạy Mã