Lista de discussão de MAC 2301
[Prévia por Data][Próxima por Data]
[Prévia por Assunto][Próxima por Assunto]
[Índice por Data][Índice por Assunto]
[Envie uma nova mensagem para a lista]
[Responda esta mensagem]
Re: EP (mais dicas)
- Subject: Re: EP (mais dicas)
- From: Alfredo Goldman <gold@ime.usp.br>
- Date: Mon, 18 Mar 2002 10:40:56 -0300
Fernando Serboncini writes:
> Professor,
>
> Se eu mandasse os arquivos HTML para testes, isso não faria os EPs ficarem
> repetidos, eu acho...mas tudo bem...
Desculpe se eu me expressei errado, mas se você quiser disponibilizar
uma página para testes eu acho ótimo. Aguardo a publicação do
endereço da mesma na lista....
> quanto aos tags abertos e fechados em linhas diferentes, acho que não
> consegui me explicar bem...
> eu quiz dizer algo do tipo :
> <A
> HREF=''>
> ou
> <BODY BGCOLOR=""
> TEXT=""
> COLOR=""
> >
>
> entende? isso tornaria mais dificil fazer o parse do HTML por linhas, como
> pedido...
> nesse caso, o ideal seria fazer como é feito normalmente, ou seja,
> transformando os \n em espaço...e fazendo uma linha só ....
>
Entendo a sua dúvida, mas não vejo problema. Tags com argumentos, tipo
<a ....> </a> podem ser tratadas como tags normais, deve se considerar
apenas o nome da tag, no caso a, todo o resto ficaria a cargo de um
outro programa mais sofisticado. O EP só verifica o balanceamento.
> > Para o EP a linha <B><I>teste</B></I> deveria causar o seguinte erro:
> atributo <I> incorretamente fechado por </B>.
>
> hmm....
> mas o q q ele vai fazer com o </I> e com o <B> ??? Ele vai dizer que o <B>
> foi incorretamente fechado pelo </I> ??
>
> É preciso pensar também que esse caso é muito dificil de diferenciar do :
> <A><B><I>teste</B></A>
>
> nesse caso, seguindo-se o algoritmo anterior, o erro seria : <I>
> incorretamente fechado por </B>, <B> incorretamente fechado por </A>, e <A>
> não foi fechado..
> Quando, na verdade, o <I> é que não foi fechado...
>
Existem várias opções:
1) A mais fácil: Parar no primeiro erro
2) A mais ingênua: Continuar mostrando erros, mesmo que não sejam reais
(arghh)
3) A melhor (mas mais difícil): capturar erros do tipo:
<A><B><I>teste</B></A> -> avisar que só o <I> está desbalanceado
<B><I>teste</B></I> -> avisar que houve uma troca.
"abertura de <I> antes de fechar </B>
So isto já deve resolver boa parte dos problemas.
Notem que ainda podem ocorrer erros nos casos:
<A><B><I>teste</A></B></I>....
Alfredo
- References:
- EP
- From: "Fernando Serboncini" <fernando.serboncini@terra.com.br>