[#408634] How do I make lots of classes aware of each other? — "Andrew S." <lists@...>

I'm apparently missing something fundamental in my knowledge of classes

10 messages 2013/07/02

[#408712] Ruby web service with REST support — "Shubhada S." <lists@...>

Hi All,

17 messages 2013/07/05

[#408812] create variables depending on counter — stefan heinrich <lists@...>

Hi community,

21 messages 2013/07/09

[#408854] execute commands within SMTP email code: send content in variables and not actual variables — dJD col <lists@...>

I am trying to send an email using the code below. I am able to send the

9 messages 2013/07/10

[#409031] tap { break } idiom deserves its own Kernel method? — Andy Lowry <lists@...>

I use this idiom from time to time:

13 messages 2013/07/22

[#409072] Link To Masses Of External Data In Openoffice? — "Austin J." <lists@...>

This is what I want to do.

19 messages 2013/07/23
[#409102] Re: Link To Masses Of External Data In Openoffice? — Tamara Temple <tamouse.lists@...> 2013/07/24

[#409103] Re: Link To Masses Of External Data In Openoffice? — "Austin J." <lists@...> 2013/07/25

tamouse m. wrote in post #1116598:

[#409122] Re: Link To Masses Of External Data In Openoffice? — Tamara Temple <tamouse.lists@...> 2013/07/26

[#409142] Re: Link To Masses Of External Data In Openoffice? — "Austin J." <lists@...> 2013/07/26

tamouse m. wrote in post #1116750:

[#409073] class <=> module — Bráulio Bhavamitra <lists@...>

Hello all,

17 messages 2013/07/23

[#409104] Ruby newbie question on Methods (NoMethoderror) — "Crispian A." <lists@...>

I have recently started learning ruby and so I am writing a small little

10 messages 2013/07/25

[#409170] Working through Ch.10 for learning to program 2.0 (Chris Pine) — JD JD <lists@...>

So, I have been working through this book, and have been doing ok up

33 messages 2013/07/28
[#409195] Re: Working through Ch.10 for learning to program 2.0 (Chris Pine) — Harry Kakueki <list.push@...> 2013/07/29

I tried this and came up with a one-liner that seems to do it. It sorts the

[#409258] WATIR - ScriptError popup on IE - Unable to get rid of! — Graeme Halls <lists@...>

I am new to Ruby & Watir, and I am having a nightmare with IE and Script

11 messages 2013/07/31

Re: how to create structure like bellow

From: Jes俍 Gabriel y Gal疣 <jgabrielygalan@...>
Date: 2013-07-24 06:50:32 UTC
List: ruby-talk #409079
On Wed, Jul 24, 2013 at 12:14 AM, Expert Alart <lists@ruby-forum.com> wrote:
> Hi
> thanks you are right, i might be thinking too hard .. may be it can be
> done easily ... but still i am in puzzle ...
>
>
> The value will come from a file , its has raw data like bellow
>
> xx-xx-xx-xx-a-z16d1
> xx-xx-xx-xx-b-z16d1
> ...................................
> xx-xx-xx-xxx-b-z15a7
> xx-xx-xx-xxx-b-z15a7
> ...................................
>
>
> So to avoid mistakes
> i will  have a manual entry , example  there will be 8 Groups
>  z16,z15,z1f........z1d

So, the "identifier" of the row, are those three characters that come
2 before the end?
If so, you can extract them easily witha  regex:

2.0.0p195 :002 > id = "xx-xx-xx-xxx-b-z15a7".match(/(...)..$/).captures[0]
 => "z15"

> as you can see those lines in  file has those entry
>
> so  i need to have like this
>  z16
> xx-xx-xx-xx-a-z16d1
> xx-xx-xx-xx-b-z16d1
> z15
> xx-xx-xx-xxx-b-z15a7
> xx-xx-xx-xxx-b-z15a7
>
> Now run  a loop to do snmp like
>
> for z15 , go each list
>     power=`snmp xx-xx-xx-xxx-b-z15a7`
>     total=power+toal
>
> end
>
>
> so the same for rest 8 ..
> to make it simple ...
> i am just planning to have array where i will insert those number
> manually..
> object={z16,z15....z1d}
>
> now
>
> object.each do |obj|
>     Read from the file
>       if line entry has "z16"
>            power=`snmp xx-xx-xx-xx-a-z16d1`
>               power_total=power+total_power
>
>       end
>         store this value into  z16
>
> end
>
>
> So when i will represent  the value in report it will be
>
> Total power for Z16=12
> Total power for Z13 =12
> ..................................
> ...........................
>
> may be can be done more simple

There's a very neat trick with hashes by which you can set a default
value for a Hash, so when you access a key that doesn't exist, it
returns that value. This lets you do things like this pretty easily:

h = Hash.new(0) # h will return 0 for non existing keys

h["z16"] += 3

this is equivalent to h["z16"] = h["z16"] + 3
and as h has a default value of 0, the second h["z16"] will return 0
the first time, adding 3 and storing it. So you could do it like this
(mix of pseudocode and code):

totals = Hash.new(0)
for each line of the file
  id = line.match(/(...)..$/).captures[0]
  power=`snmp #{line}`
  totals[id] += power
end

Hope this helps,

Jesus.

In This Thread