Bonjour à tous,
Bon voilà plusieurs jours que je m'échine à trouver une solution à un problème qui, au départ, me semblait facile : copier coller des passages d'un fichier vers un autre....
Toujours est-il que je n'y arrive pas.
J'ai deux fichiers Html très longs (plusieurs centaines, milliers de pages).. J'ai un fichier disons Origine dont je dois remplacer des passages par d'autres contenus dans le fichier Beta. J'ai pratiquement 1000 remplacements à faire.
Dans Origine j'ai des indices (ex :id="FO23P") qui me permette de trouver quels sont les passages que je dois remplacer.
Dans Beta, je n'ai pas d'indice, juste des titres des passages.
Fichier Origine :
blabla
id="FO23P" < titre1 >
blabla ..end
blabla
id="FT12I" < titre2 >
blabla ...end
blabla ...
Fichier Beta
blibli
< titre23 >
bliblibli end
blibli
< titre3 >
blibli end
blibli
Mon plan de départ était de :
1) construire des indices identiques dans Beta à partir des titres (ex si titre = "Lesson 18 Formation l'Originalité par Jean" alors idA="FO18J", en faisant d'abord un recherche sur Formation, si OK then idA="F" recherche sur Orinalité si ok idA=idA+"O" etc), d'inclure ce nouvel indice juste avant le titre du passage dans BETA.
2) Repérer le passage (je pense avoir trouvé une balise de fin ),par l'indice idA, comparer id et idA, si OK remplace le passage de Origine par passage dans Beta.
j'ai essayé en Python avec des expressions regex mais le copier coller n'est pas son fort. Je me suis alors rappeler que Bash pourrait surement etre plus efficace ...
Mais je ne suis qu'un pauvre (Hélas) économiste, j'ai bien touché un peu à Bash il y a des années mais ... echec
pour 1) j'ai essayé d'utiliser un grep puis un if sur le grep pour construire l'indice idA , mais je ne sais pas faire une boucle correcte sur le grep.
N'ayant toujours pas réussit le 1); je ne me suis pas attaqué au 2)
Si vous pouviez m'aider je vous en serais bien reconnaissant,
Ghislain
Partager