Note :
Le module LINES propose une fonction pour traiter des lignes de texte.
Il offre les fonctions suivantes:
-
lines
: extraction de lignes dans un texte
lines_fld : renvoie des informations sur l'extraction en cours
lines
La fonction ~lines() permet d'effectuer une extraction de lignes dans un texte. Le contenu de la ligne et le numéro de ligne sont ensuite disponibles. La fonction reprend le fonctionnement de ~list().
La fonction prend 3 arguments obligatoires ainsi qu'un couple d'arguments:
- la chaîne de texte initiale
- le numéro de la ligne de départ
- le nombre de lignes à retourner. Si le paramètre est vide le restant des lignes sera pris
- des arguments couplés par deux dont le premier peut-être : LF, LM, LR, LL, LN ou LD.
Appelons A le premier argument du couple, B le deuxième argument du couple.
- Si A est égal à LF, B est évalué lors du premier traitement.
- Si A est égal à LM, B est évalué pour chaque traitement, y compris le premier mais il sera alors évalué après celui de LF, et avant celui de LL.
- Si A est égal à LR, B est évalué lors du premier traitement, comme LF, mais LM n'est pas évalué pour ce même traitement, et on passe directement au suivant.
- Si A est égal à LL, B est évalué pour le dernier traitement, après celui de LM.
- Si A est égal à LN, B est évalué pour le dernier traitement, comme LL, mais LM n'est pas évalué pour ce même traitement, et ensuite on s'arrête.
- Si A est égal à LD, B est évalué si aucune ligne n'est présente (argument vide, ou rempli d'espace).
Exemple:
~set('chaîne','1 2 3 4 5') ~lines(~get('chaîne'),1,2,'LM','~lines_fld('line')
')
Résultat :
3 4
lines_fld
Cette fonction prend un seul argument, pouvant être :- 'line' : renvoie la ligne courante
- 'count' : renvoie le numéro de ligne
Exemple :
~set('chaîne','Bonjour, Ce message est un exemple, pour la fonction lines.') ~lines(~get('chaîne'),1,, 'LM','#~lines_fld('count') : ~lines_fld('line')<br />', 'LR', 'Début : ~lines_fld('line')<br />')
Résultat :
Début : Bonjour,
#2 : Ce message est un exemple,
#3 : pour la fonction lines.