Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re: Comapring two values of a scalar

by igelkott (Curate)
on Apr 13, 2013 at 12:24 UTC ( #1028513=note: print w/ replies, xml ) Need Help??


in reply to Comapring two values of a scalar

Looks like you tried to write \[31:15\] rather than use code tags. See Markup in the Monastery for help with posting questions.

Taking a bit of a guess but you probably have something like $array[0]= "31:15";. If so, just split on the ":" and do the subtraction. This should be simply enough for a beginner (sorry for the assumption) but if it gets confusing, try the same thing on a simple variable (scalar) like $foo= "31:15";.


Comment on Re: Comapring two values of a scalar
Select or Download Code
Re^2: Comapring two values of a scalar
by BillKSmith (Deacon) on Apr 13, 2013 at 17:47 UTC

    Uner the same assumption, I prefer a regular expression. The Common module will match any valid number. The /e option will do the subtraction. The /r option returns the result without modifying the original string.

    use strict; use warnings; use Regexp::Common; my $NUMBER = qr/$RE{num}{real}/; my @array = ('31:15'); print $array[0] =~ s/($NUMBER):($NUMBER)/$1-$2/er;
    Bill
      Regexp::Common

      While nice and general, this seems a bit heavy for the OP, especially considering the the rather regular examples given. Of course, always nice to see an example of a more general/powerful solution.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (7)
As of 2015-07-06 09:33 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 (71 votes), past polls