Jump to content

Soucis manipulation de texte bash/shell


Recommended Posts

Compter le nombre de ponctuations d'un texte.
 Ça ce n'est pas très dur. Comment est ce que tu distingue la ponctuation d'un texte ?
Donner la fréquence de chaque ponctuation d'un texte (combien de virgules, de points, etc.)
C'est la même chose qu'au dessus, mais divisé par le nombre total de caractères du texte.
Compter le nombre de paragraphes d'un texte (marqués par des sauts de lignes (\r, \n selon le texte ...))
Compter le nombre de lignes ? Il y a une commande pour ça, elle s'appelle wc (qui peut aussi servir aux deux parties plus haut).
Compter le nombre de phrases d'un texte (marquées par la ponctuation (.,?,!,...))
Sauf erreur de ma part, ça revient à faire la même chose que la question 2 (sans les virgules peut être).
Calculer le nombre moyen de phrases d'un texte par paragraphe
Ça c'est une combinaison des deux questions précédentes.
Sortir les 25 mots "non vides" les plus fréquents d'un texte (j'ai un fichier "nomsvides.txt" qui les référence...)
J'imagine que c'est pour utiliser des tableaux. Regarde comment on utilise ça. Autrement il y a une solution plus jolie (mais moins performante) à base de grep, tr, wc et sort.
Sortir les 25 collocations de mots non vides d'un texte les plus fréquentes
Pareil qu'au dessus en fros.
Calculer le nombre de phrases exclamatives / interrogatives d'un texte
Ça revient à faire un mix entre la question 4 et la 2.

Si tu as toujours besoin d'aide, montre nous ton état d'avancement et on pourra t'aider là où tu bloques.

http://forum.ubuntu-fr.org/viewtopic.php?id=251493

Link to comment
Share on other sites

commençons par le début :)

Pour "compter" la ponctuation du texte, j'imagine qu'il faut utiliser la commande "tr", pour ne garder que la ponctuation ([:punct:]), puis utiliser sort et uniq pour en calculer la fréquence... je ne pense pas que la fréquence le prof entende "la fréquence par rapport au nombre de caractéres total" mais par exemple ; = 4 fois , = 19 fois...

J'avoue avoir 'l'idée', mais je ne trouve absolument pas la syntaxe de la commande :(

Pour le nombre de paragraphe / texte, grâce à l'aide de totor sur le forum officiel ubuntu, j'ai réussi à trouver.

Le nombre de lignes trouvé par wc est il équivalent au nombre de phrases ? Je ne pense pas car il ne faudrait qu'une phrase par ligne.

Je cherche donc, par exemple pour trouver le nombre de phrases, le nombre de fois ou apparaissent des ".", "?" et "!", (impliquant une nouvelle phrase, -1, point final du texte), c'est pour cela que j'ai besoin du nombre d'apparition de chaque "forme" de ponctuation (si j'enleve les virgules et les points virgules, il ne me reste que la ponctuation impliquant une nouvelle phrase)

QUOTE (z3fyr @ 12-09-2008 14:33:45) *

Calculer le nombre moyen de phrases d'un texte par paragraphe

Ça c'est une combinaison des deux questions précédentes.

Nous sommes d'accord.

là encore, j'ai l'idée, mais je suis complétement noyé dans la syntaxe.

QUOTE (z3fyr @ 12-09-2008 14:33:45) *

Sortir les 25 mots "non vides" les plus fréquents d'un texte (j'ai un fichier "nomsvides.txt" qui les référence...)

J'imagine que c'est pour utiliser des tableaux. Regarde comment on utilise ça. Autrement il y a une solution plus jolie (mais moins performante) à base de grep, tr, wc et sort.

Comme mentionné sur le forum officiel ubuntu, j'ai une "liste" de mots vides, que j'aimerais utiliser ici, ... je pense qu'en faisant un "tr" à partir de cette liste, il ne me resterait plus que les mots "non vides" (je ne connais pas la syntaxe), puis, de la même manière (méthode) que la fréquence de la ponctuation, je pourrais trouver les 25 mots les plus utilisés.

QUOTE (z3fyr @ 12-09-2008 14:33:45) *

Calculer le nombre de phrases exclamatives / interrogatives d'un texte

Ça revient à faire un mix entre la question 4 et la 2.

Toujours le même probleme de fréquence par rapport à la ponctuation :(

Voila ou j'en suis... (en rajoutant une bonne grosse dose de panique)

Link to comment
Share on other sites

Pour "compter" la ponctuation du texte, j'imagine qu'il faut utiliser la commande "tr", pour ne garder que la ponctuation ([:punct:]), puis utiliser sort et uniq pour en calculer la fréquence...
avec tr sort et uniq, tu peux avoir la liste des caractères de ponctuation, on est d'accord ?

Ensuite pour chaque élément de la liste, tu peux compter le nombre d'apparitions dans le texte (avec tr, ou sed+grep ou perl, ...).

Le nombre de lignes trouvé par wc est il équivalent au nombre de phrases ? Je ne pense pas car il ne faudrait qu'une phrase par ligne.
Non, c'est le nombre de paragraphes (limités par des nouvelles lignes).
Je cherche donc, par exemple pour trouver le nombre de phrases, le nombre de fois ou apparaissent des ".", "?" et "!", (impliquant une nouvelle phrase, -1, point final du texte), c'est pour cela que j'ai besoin du nombre d'apparition de chaque "forme" de ponctuation (si j'enleve les virgules et les points virgules, il ne me reste que la ponctuation impliquant une nouvelle phrase)
C'est ça, il faut compter le nombre de ponctuations (hors , et ; et d'autres dans le cas d'un tr (= @ + & etc)). Pas la peine de faire -1. La ponctuation indique le nombre de phrases. La dernière phrase doit être comptée aussi.

Calculer le nombre moyen de phrases d'un texte par paragraphe

Ça c'est une combinaison des deux questions précédentes.

Nous sommes d'accord.

là encore, j'ai l'idée, mais je suis complétement noyé dans la syntaxe.

Ben à ce niveau là tu dois avoir le nombre de paragraphe et le nombre de lignes. Il te reste à faire une division.
Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...