From c47e1a9c28db2890f724ee57e59f3a3c30d7740c Mon Sep 17 00:00:00 2001 From: Ton Voon Date: Wed, 14 May 2008 11:19:53 +0000 Subject: Fixed parsing of scientific notation git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/Nagios-Plugin/trunk@1993 f882894a-f735-0410-b71e-b25c423dba1c --- lib/Nagios/Plugin/Range.pm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'lib/Nagios/Plugin/Range.pm') diff --git a/lib/Nagios/Plugin/Range.pm b/lib/Nagios/Plugin/Range.pm index 3828d1a..32a0639 100644 --- a/lib/Nagios/Plugin/Range.pm +++ b/lib/Nagios/Plugin/Range.pm @@ -11,7 +11,7 @@ __PACKAGE__->mk_accessors( qw(start end start_infinity end_infinity alert_on) ); -use Nagios::Plugin::Functions; +use Nagios::Plugin::Functions qw(:DEFAULT $value_re); our ($VERSION) = $Nagios::Plugin::Functions::VERSION; use overload @@ -54,7 +54,7 @@ sub parse_range_string { $string =~ s/\s//g; # strip out any whitespace # check for valid range definition - unless ( $string =~ /[\d~]/ && $string =~ m/^\@?(-?[\d.]+|~)?(:(-?[\d.]+)?)?$/ ) { + unless ( $string =~ /[\d~]/ && $string =~ m/^\@?($value_re|~)?(:($value_re)?)?$/ ) { carp "invalid range definition '$string'"; return undef; } @@ -66,14 +66,14 @@ sub parse_range_string { if ($string =~ s/^~//) { # '~:x' $range->start_infinity(1); } - if ( $string =~ m/^([\d\.-]+)?:/ ) { # '10:' + if ( $string =~ m/^($value_re)?:/ ) { # '10:' my $start = $1; $range->_set_range_start($start) if defined $start; $range->end_infinity(1); # overridden below if there's an end specified - $string =~ s/^([-\d\.]+)?://; + $string =~ s/^($value_re)?://; $valid++; } - if ($string =~ /^([-\d\.]+)$/) { # 'x:10' or '10' + if ($string =~ /^($value_re)$/) { # 'x:10' or '10' $range->_set_range_end($string); $valid++; } -- cgit v1.2.3-74-g34f1