ComeçarComece gratuitamente

Feche a tag, por favor!

Nesse meio tempo, você está trabalhando em um de seus outros projetos. A empresa vai desenvolver um novo produto. Ele ajudará os desenvolvedores a verificar automaticamente o código que estão escrevendo. Você precisa escrever um script curto para verificar se cada tag HTML que está aberta tem seu fechamento adequado.

Você tem um exemplo de uma string que contém as tags HTML:

<title>The Data Science Company</title>

Você aprendeu que uma tag de abertura HTML está sempre no início da string. Ele aparece em <>. Uma tag de fechamento também aparece dentro de <>, mas é precedida por /.

Você também se lembra de que os grupos de captura podem ser referenciados usando números, por exemplo, \4.

A lista html_tags, que contém três strings com tags HTML, e o módulore estão carregados em sua sessão. Você pode usar print() para visualizar os dados no Shell IPython.

Este exercício faz parte do curso

Expressões regulares em Python

Ver Curso

Instruções de exercício

  • Complete a regex para corresponder às tags HTML fechadas. Descubra se há uma correspondência em cada string da lista html_tags. Atribua o resultado a HTML.
  • Se for encontrada uma correspondência, imprima o primeiro grupo capturado e salvo em match_tag.
  • Se você não encontrar nenhuma correspondência, complete a regex para corresponder apenas ao texto dentro da tag HTML. Atribua-a a notmatch_tag.
  • Imprima o primeiro grupo capturado pela regex e salve-o em notmatch_tag.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

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.____(____)))
Editar e executar código