How is your data currently broken up? Your code suggests that everything you showed is one record in
@Switch_Array. So you're splitting it on the port-channel lines, which seems ok; you'll get alternating tags and values from that, so you might assign it to a hash. But not if ordering is important.
So you've got a list of elements, each of which is either a port-channel line or a block of data, from which you want to extract the port list.
my @Filter = split /(port-channel \d\n)/, $Info;
for (@Filter) {
unless (/^port/) {
# strip out the junk
s/.*Ports://s; # Everything up to Ports:, even crossing line b
+oundaries
s/^\s+//m; # Leading spaces on lines
s/\s.*//; # Everything from the first space to the end of
+ a line
}
print;
}
Caution: Contents may have been coded under pressure.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.