FAQ

Owen wrote:
I have a script with these three lines and it works

$line =~ s/^\s*//; # Remove leading spaces
You should use \s+ instead of \s* because it is more efficient.
next if ($line =~ /^#/); # Skip line if it starts with #
next if ($line =~ /^\s*$/); # Ship blank lines
You removed the whitespace two lines up so there is nothing for \s to match.
I can replace lines 1 and 2 above with

next if($line =~ /\s+|#/);

However my attempts to replace all three lines

next if($line =~ /\s+|#.*$/);

gives a warning

Use of uninitialized value in concatenation (.) or string and produces return vale? of 1
for blank lines.
I don't get that warning with that regular expression so it must be something
else in your code that is causing it.
How can I avoid these warnings with the regexp
next if $line =~ /^\s*$|^\s*#/;




John
--
use Perl;
program
fulfillment

Search Discussions

Discussion Posts

Previous

Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 2 of 2 | next ›
Discussion Overview
groupbeginners @
categoriesperl
postedJun 26, '05 at 1:21a
activeJun 26, '05 at 4:51a
posts2
users2
websiteperl.org

2 users in discussion

John W. Krahn: 1 post Owen: 1 post

People

Translate

site design / logo © 2022 Grokbase