Outils pour utilisateurs

Outils du site


public:talismane

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
public:talismane [2017/07/24 14:45]
matthieu.quignard@ens-lyon.fr
public:talismane [2017/07/24 16:28] (Version actuelle)
matthieu.quignard@ens-lyon.fr
Ligne 140: Ligne 140:
 </​code>​ </​code>​
  
 +Un programme **awk** permettant de nettoyer le résultat de Talismane et notamment d'​éclater des informations morphosyntaxiques dans des colonnes.
  
 +<​code>​
 +BEGIN {
 +    printf("#​ ID\tTOKEN\tLEMMA\tNUMBER\tGENDER\tTIME\tPERSON\tPOSSESSOR\n"​);​
 +}
 +NF == 2 {  printf("​%s\t%s\n",​$1,​$2)}
 +NF == 3 {  printf("​%s\t%s\t%s\n",​$1,​$2,​$3)}
 +NF == 4 {  printf("​%s\t%s\t%s\n",​$1,​$2,​$3);​
 +    printf("​%s\t%s\t%s\t",​$1,​$2,​$3);​
 +    ​
 +    myNumber="​_";​
 +    myGender="​_";​
 +    myTime="​_";​
 +    myPossessor="​_";​
 +    myPerson="​_";​
 +    ​
 +    #​printf("​%s\t",​$4);​
 +    temp = split($4,​seg,"​|"​);​
 +    ​
 +    for (i=1;​i<​=temp;​i++) {
 +        if (match(seg[i],"​^n="​)) myNumber=substr(seg[i],​3,​10);​
 +        if (match(seg[i],"​^g="​)) myGender=substr(seg[i],​3,​10);​
 +        if (match(seg[i],"​^t="​)) myTime=substr(seg[i],​3,​10);​
 +        if (match(seg[i],"​^poss="​)) myPossessor=substr(seg[i],​6,​10);​
 +        if (match(seg[i],"​^p="​)) myPerson=substr(seg[i],​3,​10);​
 +    }
 +    ​
 +    printf("​%s\t%s\t%s\t%s\t%s\n",​myNumber,​myGender,​myTime,​myPerson,​myPossessor);​
 +}
 +</​code>​
public/talismane.txt · Dernière modification: 2017/07/24 16:28 par matthieu.quignard@ens-lyon.fr