![]() |
|
||||||
Regular Expressions, part 3Part 1 gives a general overview of the meaning of operators. Part 2 shows basic examples of the regular expressions concept. Okay, that was simple enough. Now lets try something trickier. Here is a very powerful aspect of string matching. This takes all the characters between the <title> and </title> tags and places it into the variable $1.
if ($string =~ /<title>(.*)<\/title>/i){}
So now an if statement becomes a dynamic part
of a program! The period says to look for a single occurrence of any character
after the title widget and the * continues until the ending of the match the
/title widget. Now here's a simple set of code with a great regexp. The code iterates over a hash and then at the third line does a substitution:
for (sort keys %tabhash){
my($name) = $_;
$name =~ s/^(.)/\u$1/;
print<<"ending_print_tag";
<a href="/$_.html?orderno=$FORM{'orderno'}">$name</a><br>
ending_print_tag
}
What is that doing?
It substitutes the first character of a string (the ^(.) passes the first character of the string into the variable $1) with the uppercase letter (that's what the \u$1 does--forces $1 to be uppercase). This changes the word furniture into the word Furniture. Have a date you want to split into three fields? You could call split with an array: @datea = split(/\/,$date);-or-
if ($date =~ /(..)\/(..)\/(..)/) { $month = $1; $day = $2; $year = $3; }
Return to Perl Help |
|||||||
[Perl help] [ABAP help] [MySQL help] [TCP/IP troubleshooting] [HTML help] [Feedback] [Humor] Advertise on Golden Ink's Georgia Network
|
|||||||