Salut a tous. j'ai un nouveau problème, et j'espere que vous pourrez m'aider.
j'ai le fichier suivant :

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
#########################################################################
##                                                                     ##
##                          XXXXXXXXXXX                                ##
##                          XXXXXXXXXXX                                ##
##                          XXXXXXXXXXX                                ##
##                                                                     ##
#########################################################################
   07:21:23:491 XXDataAPInformation (0x00f98620) = {
                request: 2712, type: 'X' - [16000.18100]->[0.0] (0)
                tag 86 (AccessType) = 0
                XXXessionAP (0x00f98680) = {
                    XXXxchangeInfo (0x00f98684) = {
                        sessiXXX     = 18501
                        exXXXXXXX  = XXXX
                        XXXgeLXXl = XXXX
                        tag 15 (ExeXXXXratOnHead) = 2
                        tag 38 (UnfreNormXXXXedge) = 1
                        tag 39 (AutodeUpdate) = 0 (-1, )
                        tag 45 (SendNeommand) = 1
                        tag 46 (IgnoreXXXXXssedExec) = 1
                        tag 63 (AlwaysUpSameQuote) = 1
                        tag 90 (SupXXXXXies) = 1, 2, 4, 5, 6, 7, 9, 11, 12, 17, 3
                        tag 120 (CoreTimeZone) = -800
                    }
                }
                }
   07:21:23:493 XXDataAPInformation (0x00fe46d8) = {
                request: 2712, type: 'X' - [16000.18100]->[0.0] (0)
                tag 86 (AccessType) = 0
                XXXessionAP (0x00fe4738) = {
                    XXxchangeInfo (0x00fe473c) = {
                        sessXXX     = 18502
                        XXXXXangeXXXXe  = XXXXX
                        XXXXngeLabel = XXXXX
                        tag 15 (Exectratead) = 2
                        tag 38 (UnfreezlAcknowledge) = 1
                        tag 39 (AutomaticTradeUpdate) = 0 (-1, )
                        tag 45 (SendXXXXnd) = 1
                        tag 46 (IgnoreXXXdExec) = 1
                        tag 63 (AlXXXXameQuote) = 1
                        tag 90 (Supportlidities) = 1, 2, 4, 5, 6, 7, 9, 11, 12, 17, 3
                        tag 120 (CoreTimeZone) = -800
                    }
                }
                }
et je voudrais supprimer les commentaires a udebut, et suprimer les blancs pour obtenir toutes les donnees sur une ligne
qqch du style
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
- 07:21:23:491 XXDataAPInformation (0x00f98620) = {request: 2712, type: 'X' - [16000.18100]->[0.0] (0) tag 86 (AccessType) = 0 XXXessionAP (0x00f98680) = { XXXxchangeInfo (0x00f98684) = { sessiXXX     = 18501 exXXXXXXX  = XXXX  XXXgeLXXl = XXXX tag 15 (ExeXXXXratOnHead) = 2    tag 38 (UnfreNormXXXXedge) = 1 tag 39 (AutodeUpdate) = 0 (-1, ) tag 45 (SendNeommand) tag 46 (IgnoreXXXXXssedExec) = 1 tag 63 (AlwaysUpSameQuote) = 1 tag 90 (SupXXXXXies) = 1, 2, 4, 5, 6, 7, 9, 11, 12, 17, 3 tag 120 (CoreTimeZone) = -800 }  } }
- 07:21:23:493 XXDataAPInformation (0x00fe46d8) = { request: 2712, type: 'X' - [16000.18100]->[0.0] (0) tag 86 (AccessType) = 0  XXXessionAP (0x00fe4738) = {  XXxchangeInfo (0x00fe473c) = { sessXXX     = 18502  XXXXXangeXXXXe  = XXXXX XXXXngeLabel = XXXXX tag 15 (Exectratead) = 2  tag 38 (UnfreezlAcknowledge) = 1  tag 39 (AutomaticTradeUpdate) = 0 (-1, )  tag 45 (SendXXXXnd) = 1 tag 46 (IgnoreXXXdExec) = 1 tag 63 (AlXXXXameQuote) = 1  tag 90 (Supportlidities) = 1, 2, 4, 5, 6, 7, 9, 11, 12, 17, 3 tag 120 (CoreTimeZone) = -800  } } }

voici mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
while(<>)
{
    chomp;
    if (!(/^#/)) {
    s/\s+/ /g;           # compress spaces
  	s/\Z\s\s\A\s/\n-/; # detect end &beginning of line
    print;
   }
}
print "\n";
on dirait que ca ne reconnait pas le \Z..
qqn a une piste?

j'ai aussi essaye ca
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
while(<>)
{
    chomp;
    if (!(/^#/)) {
    s/\s+/ /g;           # compress spaces
  	s/\}\s\s\}\s\s\}\s/\n-/; # detect end &beginning of line
    print;
   }
}
print "\n";
Je crois que je commence a voir ou est le probleme. Je crois que des qu'il trouve un } il le supprime, et donc la condition } } } n'est jms verifiee