I'd suggest you use the map function.
Properly, MAP allows you, amongst other things, to cast a regexp on $_ for each list element (I'd call it ARRAY in this case).
Please refer to previous posts about regexp, whereas with map here you can simplify all syntax needed in one line.
#!usr/bin/perl
### Search through the users
@vararray= ('andrew', 'andrews', 'test', 'AnDre', 'HAHAhahAndrEXXXSh
+owtonite', 'AndreaLovesPr0n','Tony', 'Perlmonks');
=comment
foreach $user (@list) {
if(param('search') =~ /$user/) {
print "$user<br>";
}
}
=cut
$varregexp= 'andre';
#this is just for finding the number of matches
$varmapresults= 0;
$varmapresults= map (/$varregexp/i, @vararray);
#get the actual values. A simple regexp returns the NUMBER of matche
+s, hence the IF statement between brackets
@varmapresultsarray= map {$_ if $_=~ /$varregexp/i} @vararray;
print "\nHell-llo n-nurse!: $varmapresults times";
print "\nDo what you want with me!: @varmapresultsarray";
The slickness of the MAP function will be very useful in your future!
____________________
$ i |\/| |° £ i f '/
I know MU, hence I can only learn
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|