Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re: Re: Non-fixed data in record

by brassmon_k (Sexton)
on Aug 31, 2001 at 21:22 UTC ( #109450=note: print w/ replies, xml ) Need Help??


in reply to Re: Non-fixed data in record
in thread Non-fixed data in record

Yes,

That's good but here's why I can't give any of the keys a value after the "mSTerminating" line. Okay but let's say the line I want to print can have a possibility of 3 different values.

So let's say the line you used "radioChannelProperty" can have 3 different values. Would I then constuct like this:

my %data; $data{PCSPLMNCallDataRecord}{mSTerminating} {radioChannelProperty} = "00'H"; {radioChannelProperty} = "01'H"; {radioChannelProperty} = "02'H";
The Brassmon_k


Comment on Re: Re: Non-fixed data in record
Download Code
Replies are listed 'Best First'.
Re: Re: Re: Non-fixed data in record
by dragonchild (Archbishop) on Aug 31, 2001 at 21:26 UTC
    Nope. You would do something like the following:
    my %data; @{$data{PCSPLMNCallDataRecord}{mSTerminating}{radioChannelProperty}} = ("00'H", "01'H", "02'H");
    And access it just like you would any array. Just the name is a little longer. :)

    ------
    We are the carpenters and bricklayers of the Information Age.

    Vote paco for President!

      Okay,

      As if you haven't noticed I'm not to good at the hash/array thing. I'm not a newbie though. I'd say I'm intermediate. Anyway okay again for "radioChannelProperty", If I wanted to print this "radioChannelProperty is at Sector 47" for radioChannelProperty's value of 00'H
      I'd have to do this -
      if (radioChannelProperty[0] =~ "00'H") { print "radioChannelProperty is at Sector 47\n";
      However let's say the above worked. How would I tell the script to find that line in the block of text.
      if ($_ =~ /radioChannelProperty/) {
      Oh, I'm lost on this one.

      The Brassmon_k
        I guess what I really need to know more than the hash or arrays because thats used primarily for storing values is how to tell the script that if it finds the line I want to print it. I haven't been able to do that because it's always on different lines, and I can't use "$_" for a pattern match because the only way I can get it to print is to print "$_" and I haven't figured out how to say if you match this line print it. I can't say if you match this text on this line print it because the text is on different lines sometimes.

        To make this work I was thinking of using OR's, such as:
        If ($lines[2] =~ "radioChannelProperty") { print "$lines[2]"; OR if ($lines[3] =~ "radioChannelProperty") { print "$lines[3]"; OR etc...
        That's what I really, REALLY need to figure out. I can read on how to construct the arrays and hashes and stuff but as to do the above I have no clue. I haven't tried what I put up there because I think that PERL would laugh at me that was just to give you an example of what I was looking at for desired effect.
        The Brassmonk

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (7)
As of 2015-07-29 03:47 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (260 votes), past polls