Extraction et mis en form de texte

Résolu
Bonjour,
Voila mon problème, je dois extraire des lignes d'un fichier texte (IN.txt)
La première commence par "<|" et la seconde par "$"

Mon fichier de sortie doit contenir sur la meme ligne :
la ligne 1 sans les 2 premiers caractères "<|" suivi de la ligne 2 sans le premier caractère "$"

J'ai plusieurs lignes dans a récupérer dans un même fichier ......

Merci de votre aide

Cyd

Fichier IN.txt:

[2010.04.30 11:24:42] PDF Processing Started for c:\test\in\001.pdf
[2010.04.30 11:24:42] Key Extraction Started
<|001.pdf
$|00000006|0|417|541|457|550|10/03/10|0|778|524|813|533|94742300
>|6 PAGES - 1 DOCUMENTS
[2010.04.30 11:24:42] Key Extraction Done
[2010.04.30 11:24:42] PDF Processing Done for c:\test\in\001.pdf

Fichier OUT:
001.pdf|00000006|0|417|541|457|550|10/03/10|0|778|524|813|533|94742300

3 réponses

  1. Modérateur
    Salut,

    Il te faut un langage particulier ?
    La 1ère ligne est toujours suivie d'une 2nd commençant par "$" ?
    0
    1. Pour le langage ce sera le plus simple possible.... de toute manière pour le moment j'ai rien d'installé ........
      Oui la première ligne est toujours suivi d'une 2nd commençant par "$" et ainsi de suite ....
      0
      1. Modérateur
        Re-

        J'ai ça avec "sed" (je suis sous GNU/Linux, mais il existe une version pour Windows Sed pour Windows).

        Voilà ce que ça donne Sous GNU/Linux :

        jp@MDK:~/tmpfs ssh$ cat cyd
        [2010.04.30 11:24:42] PDF Processing Started for c:\test\in\001.pdf
        [2010.04.30 11:24:42] Key Extraction Started
        <|001.pdf
        $|00000006|0|417|541|457|550|10/03/10|0|778|524|813|533|94742300
        >|6 PAGES - 1 DOCUMENTS
        [2010.04.30 11:24:42] Key Extraction Done
        [2010.04.30 11:24:42] PDF Processing Done for c:\test\in\001.pdf
        
        jp@MDK:~/tmpfs ssh$ sed -n '/^<|/N;s/<|//;s/\n\$//p' cyd > cyd.out
        
        jp@MDK:~/tmpfs ssh$ cat cyd.out
        001.pdf|00000006|0|417|541|457|550|10/03/10|0|778|524|813|533|94742300
        
        jp@MDK:~/tmpfs ssh$


        Et sous Windows :

        C:\temp>type cyd.txt
        [2010.04.30 11:24:42] PDF Processing Started for c:\test\in\001.pdf
        [2010.04.30 11:24:42] Key Extraction Started
        <|001.pdf
        $|00000006|0|417|541|457|550|10/03/10|0|778|524|813|533|94742300
        >|6 PAGES - 1 DOCUMENTS
        [2010.04.30 11:24:42] Key Extraction Done
        [2010.04.30 11:24:42] PDF Processing Done for c:\test\in\001.pdf
        
        C:\temp>sed -n "/^<|/N;s/<|//;s/\n\$//p" cyd.txt > cyd.out.txt
        
        C:\temp>type cyd.out.txt
        001.pdf|00000006|0|417|541|457|550|10/03/10|0|778|524|813|533|94742300
        
        C:\temp>


        ;-))
        0
        1. Merci c super !!!!!!!!!!! Il me reste juste à tester sur un fichier complet mais ça fonctionne sur les petits fichiers que j'ai déjà.

          Merci encore :)
          0