Extraction et mis en form de texte

Résolu/Fermé
cyd77 - 4 mai 2010 à 11:13
 cyd77 - 4 mai 2010 à 12:03
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

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
4 mai 2010 à 11:19
Salut,

Il te faut un langage particulier ?
La 1ère ligne est toujours suivie d'une 2nd commençant par "$" ?
0
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
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
4 mai 2010 à 11:40
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
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