BaşlayınÜcretsiz başlayın

Etiketi kapatalım, lütfen!

Bu arada, başka bir projen üzerinde çalışıyorsun. Şirket yeni bir ürün geliştirecek. Bu ürün, geliştiricilerin yazdıkları kodu otomatik olarak kontrol etmelerine yardımcı olacak. Açık olan her HTML etiketinin doğru şekilde kapatıldığını kontrol eden kısa bir betik yazman gerekiyor.

HTML etiketleri içeren bir dize örneğin var:

<title>The Data Science Company</title>

Açılış HTML etiketinin her zaman dizenin başında olduğunu öğreniyorsun. <> içinde görünür. Kapanış etiketi de <> içinde görünür ancak başında / bulunur.

Ayrıca, yakalama gruplarına sayılarla başvurulabileceğini hatırlıyorsun; örneğin \4.

html_tags listesi (HTML etiketleri içeren üç dize) ve re modülü oturumuna yüklendi. Veriyi IPython Shell'de görmek için print() kullanabilirsin.

Bu egzersiz, kursun bir parçasıdır

Python'da Regular Expressions

Kursa Göz Atın

Egzersiz talimatları

  • Kapanmış HTML etiketlerini eşleştirmek için regex'i tamamla. html_tags listesindeki her dizede eşleşme olup olmadığını bul. Sonucu match_tag değişkenine ata.
  • Eğer bir eşleşme bulunursa, match_tag içinde kaydedilen ilk yakalama grubunu yazdır.
  • Eğer eşleşme bulunmazsa, yalnızca HTML etiketi içindeki metni eşleştirmek için regex'i tamamla. Bunu notmatch_tag değişkenine ata.
  • Regex'in yakaladığı ilk grubu yazdır ve notmatch_tag içine kaydet.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

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.____(____)))
Kodu Düzenle ve Çalıştır