Bonjour,

J'ai des fichiers à parser et je sollicite votre aide pour y arriver s'il vous plait.
En effet j'ai un dossier contenant plusieurs fichiers à parser.

Chaque fichier est composé de plusieurs parties. Une partie commence par SEQ et se termine par "\\". Ainsi je veux que mon algorithme me fasse ceci.

1 . Lire le fichier, pour chaque partie contenant 23 fois la chaine de caractère "SEQ", l'écrire dans un nouveau fichier.

2. Pour chaque ligne commençant par SEQ et dont la chaine de caractère qui suie SEQ est "homo_sapiens", découper la ligne en plusieurs chaine de caractères en utilisant comme séparateur les espaces entre les chaines de caractères.

3. Récupérer la chaine 4, 5 et 6 du Split. (Chaque Split fournira 7 chaines de caractères d'ailleurs).

4. Faire la différence (chaine 5 - chaine 4) et stocker le résultat obtenu dans la variable "Distance".
Pour la chaine 7 du Split, enlever les caractères commençant du début "(" jusqu'au caractère "=", en lever aussi le dernier caractère ")" et stocker la chaine de caractère qui reste dans la variable "Taille".

5. Au fur et à mesure que l'on lit le fichier partie par partie, faire la somme des "Distances"
le stocker dans la variable "SommeDistance".

6. Une fois la lecture d'un fichier terminée, passer à un autre fichier du dossier et refaire la même chose.

7. Au fur et à mesure qu' on lie les fichiers,
Faire la somme des "SommeDistance" de chaque fichier, l'enregistrer dans "SommeSommeDistance".
Faire aussi la somme des valeurs de la variable "Taille", le stocker dans la variable SommeTaille. (NB : chaque fichier ayant une seule valeur pour la variable "Taille")

8. A la fin de la lecture de tous les fichiers,
Faire l'opération. (SommeSommeDistance \ SommeTaille), stocker la valeur obtenue dans couverture.

9. Fin

En éspèrant avoir été clair, je vous donne la structure du fichier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
 
SEQ homo_sapiens 10 78777 188846 1 (chr_length=135534747)
SEQ ancestral_sequences Ancestor_494_433724 1 109940 1 (chr_length=109940)
SEQ pan_troglodytes 10 83993 198243 1 (chr_length=135001995)
SEQ ancestral_sequences Ancestor_494_433725 1 130088 1 (chr_length=130088)
SEQ gorilla_gorilla 10 549 106727 1 (chr_length=148046649)
TREE ((Hsap_10_78777_188846[+]:0.0067,Ptro_10_83993_198243[+]:0.0067)Aseq_Ancestor_494_433724_1_109940[+]:0.0022,Ggor_10_549_106727[+]:0.0088)Aseq_Ancestor_494_433725_1_130088[+]:0.0000;
DATA
GGGGG
AAAAA
AAAAA
AAAAA
TTTTT
TTTTT
TTTTT
\\
 
SEQ homo_sapiens 10 78777 188846 1 (chr_length=135534747)
SEQ ancestral_sequences Ancestor_494_433724 1 109940 1 (chr_length=109940)
SEQ pan_troglodytes 10 83993 198243 1 (chr_length=135001995)
SEQ ancestral_sequences Ancestor_494_433725 1 130088 1 (chr_length=130088)
SEQ gorilla_gorilla 10 549 106727 1 (chr_length=148046649)
TREE ((Hsap_10_78777_188846[+]:0.0067,Ptro_10_83993_198243[+]:0.0067)Aseq_Ancestor_494_433724_1_109940[+]:0.0022,Ggor_10_549_106727[+]:0.0088)Aseq_Ancestor_494_433725_1_130088[+]:0.0000;
DATA
CCCCC
AAAAA
TTTTT
TTTTT
AAAAA
AAAAA
AAAAA
GGGGG
AAAAA
CCCCC
TTTTT
TTTTT
AAAAA
TTTTT
\\
 
SEQ homo_sapiens 10 188847 225953 1 (chr_length=135534747)
SEQ ancestral_sequences Ancestor_494_520201 1 37347 -1 (chr_length=37347)
SEQ pan_troglodytes 10 198244 235417 1 (chr_length=135001995)
SEQ ancestral_sequences Ancestor_494_520203 1 37275 -1 (chr_length=37275)
SEQ gorilla_gorilla 10 106728 147755 1 (chr_length=148046649)
SEQ ancestral_sequences Ancestor_494_520195 1 34222 -1 (chr_length=34222)
SEQ pongo_pygmaeus 10 130064 165318 1 (chr_length=133410057)
SEQ ancestral_sequences Ancestor_494_520196 1 34149 -1 (chr_length=34149)
SEQ macaca_mulatta 9 103227 138335 1 (chr_length=133323859)
SEQ ancestral_sequences Ancestor_494_520194 1 32719 -1 (chr_length=32719)
SEQ callithrix_jacchus GL286397.1 712176 754122 1 (chr_length=1361745)
SEQ ancestral_sequences Ancestor_494_520202 1 22929 -1 (chr_length=22929)
SEQ mus_musculus 13 9734693 9757593 -1 (chr_length=120284312)
SEQ ancestral_sequences Ancestor_494_520198 1 20379 -1 (chr_length=20379)
SEQ rattus_norvegicus 17 71302947 71330922 1 (chr_length=97296363)
SEQ ancestral_sequences Ancestor_494_520197 1 31128 -1 (chr_length=31128)
SEQ canis_familiaris 2 37420124 37466229 -1 (chr_length=88410189)
SEQ ancestral_sequences Ancestor_494_520200 1 33496 -1 (chr_length=33496)
SEQ equus_caballus 29 33589493 33621743 -1 (chr_length=33672925)
SEQ ancestral_sequences Ancestor_494_520199 1 31912 -1 (chr_length=31912)
SEQ sus_scrofa 10 64747189 64800043 1 (chr_length=66741929)
TREE (((((((Hsap_10_188847_225953[+]:0.0067,Ptro_10_198244_235417[+]:0.0067)Aseq_Ancestor_494_520201_1_37347[-]:0.0022,Ggor_10_106728_147755[+]:0.0088)Aseq_Ancestor_494_520203_1_37275[-]:0.0097,Ppyg_10_130064_165318[+]:0.0183)Aseq_Ancestor_494_520195_1_34222[-]:0.0143,Mmul_9_103227_138335[+]:0.0375)Aseq_Ancestor_494_520196_1_34149[-]:0.0220,Cjac_GL286397.1_712176_754122[+]:0.0661)Aseq_Ancestor_494_520194_1_32719[-]:0.0891,(Mmus_13_9734693_9757593[-]:0.0845,Rnor_17_71302947_71330922[+]:0.0916)Aseq_Ancestor_494_520198_1_20379[-]:0.2720)Aseq_Ancestor_494_520202_1_22929[-]:0.0206,((Ecab_29_33589493_33621743[-]:0.1094,Cfam_2_37420124_37466229[-]:0.1523)Aseq_Ancestor_494_520200_1_33496[-]:0.0107,Sscr_10_64747189_64800043[+]:0.0992)Aseq_Ancestor_494_520199_1_31912[-]:0.0329)Aseq_Ancestor_494_520197_1_31128[-]:0.0000;
DATA
CCCCCCCCCCCCCCCCCCCCC
TTTTTTTTTTTTTTTTTTTTT
CCCCCCCCCCCCCCCCCCCCT
AAAAAAAAAAAAAAAAAAAAA
CCCCCCCCCCCCTTTCCCCCC
AAAAAAAAAAAAAAAAAAAAG
TTTTTTTTTTTTTTTTCTTTT
TTTTTTTTTTTTTTTTTTTTT
AAAAAAAAAAAAAAAAGAAAA
GGGGGGGGGGGTTTTTTTTTT
GGGGGGGGGGGGGGGGGGGGG
AAAAAAAAAAAAGGGAAAAAA
AAAAAAAAAAAAAAAAGAAAA
\\
MERCI D'AVANCE