Farrell, Patrick wrote:
This is roughly what I am trying to do. Surround lower case strings within a
string with tags.
===========================================================
$msgText="THIS IS MY test STRING";
$msgText =~ m/ [a-z]+ /; #or $msgText =~ /\s[a-z]+\s/;
if(defined($1)){
That won't work correctly because 1) you have no capturing parentheses
in your pattern, and 2) if the match failed $1 could be left over from a
previous match.
$1=~ s/\s+//g;
$1, like all the numeric variables, is READ-ONLY and cannot be modified.
$msgText =~ s/$1/ <bold>$1<\/bold> /;
}
Print "\n$msgText";
Perl is case sensitive so that should be:
print "\n$msgText";
=======================================================
I get the following:
THIS IS MY test STRING
But I wanted expected this:
THIS IS MY <bold>test<\/bold> STRING
$ perl -le'
my $msgText = "THIS IS MY test STRING";
print $msgText;
$msgText =~ s!(?<= )([a-z]+)(?= )!<bold>$1</bold>!g;
print $msgText;
'
THIS IS MY test STRING
THIS IS MY <bold>test</bold> STRING
John
--
Those people who think they know everything are a great
annoyance to those of us who do. -- Isaac Asimov
--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/