frederic massot <[EMAIL PROTECTED]> wrote:

> Charles Goyard wrote:
> > 
> > > Il y a une diff�rence entre une ligne vide et une ligne sans "\n" � la
> > > fin aussi.  Je crois que Bernard voulait dire "avec ou sans une ligne
> > > qui correponderait � ^$ alors que la ligne d'au-dessus � un retour
> > > chariot".
> > 
> > Mais que dire des lignes vides sans retour chariot ?
> > 
> 
> Peut on la qualifier de ligne, si elle n'a pas de retour chariot ?


        Ben, �a tourne � la m�taphysique, l� :-)

1/ Le retour chariot est un S�PARATEUR de lignes (il n'est donc pas consid�r�
   comme faisant v�ritablement partie des lignes elles-m�mes). En cons�quence,
   il n'est en th�orie n�cessaire qu'une ligne soit suivie par un retour
   chariot que dans le cas o� il existe des lignes suivantes.

2/ une ligne vide est une ligne ne contenant aucun caract�re. Mais pour
   pouvoir qualifier la cha�ne vide de �ligne�, il faut qu'elle soit suivie
   d'autre chose, donc d'autre(s) ligne(s), et par cons�quent il faut qu'elle
   soit suivie d'un retour chariot.


Exemples:

tata \n titi \n toto <EOF>       => 3 lignes (s�par�es par 2 \n).

tata \n titi \n toto \n <EOF>    => 3 lignes, mais 4 \n cette fois. Le <EOF>
                                 ne peut en effet pas compter comme ligne
                                 vide, puisqu'il n'est suivi de rien.

\n tata \n titi \n toto <EOF>    => 4 lignes (s�par�es par 3 \n). La premi�re
                                 ligne est vide et elle est bien suivie par
                                 (au moins) un retour chariot.

tata \n \n titi \n toto <EOF>    => 4 lignes (s�par�es par 3 \n). La deuxi�me
                                 ligne est vide et elle est bien suivie par
                                 (au moins) un retour chariot.

tata \n titi \n toto \n \n <EOF> => 4 lignes avec 4 \n. La quatri�me et
                                 derni�re ligne est vide et elle est bien
                                 suivie par (au moins) un retour chariot.


M�me si l'usage d'une derni�re ligne sans retour chariot est douteux et pr�te
� confusion, il n'est en th�orie pas � exclure, et beaucoup de programmes
sont mal con�us car ils pr�supposent � tort qu'une ligne est d�finie par ^.*\n


        Voil� ce qu'il fallait en retenir, dans les grandes lignes ;-)


-- 
Didier Verna, [EMAIL PROTECTED], http://www.lrde.epita.fr/~didier

EPITA / LRDE, 14-16 rue Voltaire   Tel.+33 (1) 53 14 59 47
94276 Le Kremlin-Bic�tre, France   Fax.+33 (1) 44 08 01 99   [EMAIL PROTECTED]


Répondre à