my $build = ($vdata=~/=(\d+)$/);
####
(my $build) = ($vdata=~/=(\d+)$/);
##
##
use strict;
use warnings;
my $text = "The quick brown fox jumps over the lazy dog";
my ($h, $i, $j) = $text =~ /(\S*h\S*).*?(\S*i\S*).*?(\S*j\S*)/;
print "$h, $i, $j\n";
__END__
Output:
The, quick, jumps
##
##
use strict;
use warnings;
# my $dir1 = 'Z:\My Documents\Workspace';
# my $versionFile = "$dir1\\version.txt";
# open (VFILE, $versionFile)|| die $!;
# my $vdata= ;
# close (VFILE);
try_this("Version=2010-09-01_17-29-04 Build=26");
try_this("Version=2010-09-01_17-29-04 Build=26\n");
try_this("Version=2010-09-01_17-29-04 Build=26\n\n");
sub try_this {
my ($vdata) = @_;
print "=" x 69, "\n";
print "Str: [$vdata]\n";
printf "Asc: %s\n\n", join ' ', map { ord $_ } split //, $vdata;
(my $build) = ($vdata=~/=(\d+)$/);
print "Build = [$build]\n\n";#this is the problem line
}
__END__
Output:
=====================================================================
Str: [Version=2010-09-01_17-29-04 Build=26]
Asc: 86 101 114 115 105 111 110 61 50 48 49 48 45 48 57 45 48 49 95
49 55 45 50 57 45 48 52 32 66 117 105 108 100 61 50 54
Build = [26]
=====================================================================
Str: [Version=2010-09-01_17-29-04 Build=26
]
Asc: 86 101 114 115 105 111 110 61 50 48 49 48 45 48 57 45 48 49 95
49 55 45 50 57 45 48 52 32 66 117 105 108 100 61 50 54 10
Build = [26]
=====================================================================
Str: [Version=2010-09-01_17-29-04 Build=26
]
Asc: 86 101 114 115 105 111 110 61 50 48 49 48 45 48 57 45 48 49 95
49 55 45 50 57 45 48 52 32 66 117 105 108 100 61 50 54 10 10
Use of uninitialized value $build in concatenation (.) or string at
D:\Documents and Settings\jonorton\a.pl line 25.
Build = []