Gross1 =~ /#{Gross2}/
This throws as nil for me, even if first 3 values are matching, i should
consider it was true match...
Using the =~ operator on an Integer makes no sense, because the operator
isn't really defined for Integers. It uses the dummy definition of
Object#=~, which simply returns nil and does nothing else.
But even if you convert the Integer to a String, it will get you
nowhere, because that's just not how regular expressions work. You'll
probably have to convert Gross1 to a String and go through each digit
(each_char), checking if Gross2 has the same digit (the decimal point
has to be skipped).
However, I'm not even sure how you want to compare the values:
gross1 = 414.23
gross2 = 542.14
How many matches do we have? 2? 3? Or more?
Please note: Don't use capitalized names. Ruby interprets them as
constants (which is probably not what you want).
"Equal" does make sense for decimal numbers, but what do you mean by
"Gross1 has values matching with Gross2"? I cannot connect any math
operation with that.
Kind regards
robert
···
On Tue, Jun 26, 2012 at 9:45 PM, ideal one <lists@ruby-forum.com> wrote:
Hi,
I have a symbol market value which changes dynamically & i have to
multiple it with static value order.
eg:
Symbol = 567.45
order = 10
Gross = symbol * order
Gross1 = 567.45 * 10 = 5674.50
In couple of seconds Symbol value might change to 567.88
So Gross2 = 567.88 * 10 = 5678.80
I wanted to compare if Gross1 and Gross2 are equal or if Gross1 has
values matching with Gross2.
Hi,
Actually if you see my gross1 and gross2 values, the differences are
only at decimal level.
the first 3 numbers are in most cases matching.
So maybe i should go for 3 number/character match depending whether i am
retrieving it as a number or a string.
gross1 = 567.45 * 10
gross2 = 567.88 * 10
Thanks
Jan E. wrote in post #1066200:
···
Hi,
ideal one wrote in post #1066196:
Gross1 =~ /#{Gross2}/
This throws as nil for me, even if first 3 values are matching, i should
consider it was true match...
Using the =~ operator on an Integer makes no sense, because the operator
isn't really defined for Integers. It uses the dummy definition of
Object#=~, which simply returns nil and does nothing else.
But even if you convert the Integer to a String, it will get you
nowhere, because that's just not how regular expressions work. You'll
probably have to convert Gross1 to a String and go through each digit
(each_char), checking if Gross2 has the same digit (the decimal point
has to be skipped).
However, I'm not even sure how you want to compare the values:
gross1 = 414.23
gross2 = 542.14
How many matches do we have? 2? 3? Or more?
Please note: Don't use capitalized names. Ruby interprets them as
constants (which is probably not what you want).
On Tue, Jun 26, 2012 at 10:47 PM, ideal one <lists@ruby-forum.com> wrote:
Hi,
Actually if you see my gross1 and gross2 values, the differences are
only at decimal level.
the first 3 numbers are in most cases matching.
So maybe i should go for 3 number/character match depending whether i am
retrieving it as a number or a string.