Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options

Re^3: Question on format statement

by roboticus (Chancellor)
on Aug 05, 2010 at 13:40 UTC ( [id://853135]=note: print w/replies, xml ) Need Help??

in reply to Re^2: Question on format statement
in thread Question on format statement


I'm not quite sure what you're asking here. But for a case statement, I just use the simple tried and true:

if ('foo' eq $val) { # process case 1 } elsif ('bar' eq $val or 'baz' eq $val) { # process case 2 } elsif ('boom' eq $val) { # process case 3 } else { print "Unexpected value '$val'!\n"; }

Just add elsif blocks as needed. Not as "pretty" as a switch/case statement in other languages, but it's simple and clear.

The way your question is phrased makes me think you might have meant "how do you use different format statements within a page?". To do that, you do something like:

use FileHandle; format foo_rec = FOO @>>>>>>> $flds[3] . format dflt_rec = @<<<<<<< @>>>>>>> @>>>>> @>>>>> $flds[2] $flds[3] $flds[5] $flds[9] . while (<FH>) { my @flds = split /\|/, $_; if ($flds[0] eq 'foo') { format_name FS "foo_rec"; write FS; } else { format_name FS "dflt_rec"; write FS; } }


Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://853135]
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others contemplating the Monastery: (3)
As of 2024-05-29 17:38 GMT
Find Nodes?
    Voting Booth?

    No recent polls found