Hi,

using perl 5.8.8. i was trying to match for capturing data from a
server's response message.
Now i have the problem, that within the response there is a head-line
with #x next lines, that match a certain pattern. And i want to
extract as many data as come:

E.g folloing input

[...]
APNID   PDPADD                EQOSID  VPAA  PDPCH    PDPTY  PDPID
    1                            2    NO             IPV4    1
    2                            2    NO             IPV4    2
    3                            2    NO             IPV4    3
[...]

I would like to extract with this:

[...]
APNID   PDPADD                EQOSID  VPAA  PDPCH    PDPTY  PDPID
(?:[ ]+(\\d+)[ ]+(\\d+)[ ]+NO[ ]+IPV4[ ]+(\\d+)\\n)*
[...]

But it only saves the values of the last line, that matched.
The data of previous lines is not captured.

How can i manage, that all lines data are captured?

I tried a work-around with Regexp::NamedCaptures this way:

[...]
APNID   PDPADD                EQOSID  VPAA  PDPCH    PDPTY  PDPID
(?:[ ]+(?< [EMAIL PROTECTED] >\\d+)[ ]+(\\d+)[ ]+NO[ ]+IPV4[ ]+(\\d+)\\n)*
[...]


..."hoping" that using a @APNIDs here would push back the values.
But it didn't work.
Now i am desperately trying to find out, if there is possible to use a
proxy "push_backer" var to @array for assignment, because i guess i
can not just use some @array to save multiple hits?

But actually i would like an easier way to do this.

rgds!

Frank


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/


Reply via email to