I am afraid it will not work, regardless of what you are trying to do. $_ in the while loop will have a new line with it and it will never match any of the %hash keys. $hash{$_} will evaluate to a 1 if exist and to undef if it doesn't, thus /1/ .. /END/ or /undef/ .. /END/, which makes a moot condition.
What is it that you are trying to do? The latest seems off from your original query.
Could you post input and desired output examples?
I have to add a variable value to an array, something like this:
......
@my_array_name = $value_of_this_variable;
This doesnt seem to work, any ideas why?
Thanks! (4 Replies)
i have a file called file.txt having the following entries.
2321
2311
2313
4213
i wnat to store these values in a list and i want to iterate the list using loop and store it in another list (1 Reply)
Hi,
Is there an easy way to simulate following Perl code in Bash.
if ( grep {$my_value eq $_} @ARGV ){
print "Do Something\n";
} else {
die "Invalid value";
} (0 Replies)
Hi,
cut -d: -f1,3 /etc/group >rpt.out
I have a doubt in perl. right i am getting list of group user id into rpt.out file. instead i need to store it as an array in perl script. could you please tell me how can i get list of user into an array in perl script..
thanks in advance. (1 Reply)
Hi,
I have 2 arrays:
@names=qw(amith veena chaitra);
@files=qw(file.txt file1.txt file3.txt);
There is one to one relationship between names and files.
There needs to be mapping created between names and files.
The output should be like this:
amith --> file.txt
veena --->... (3 Replies)
Hi,
i want to search and replace array values by using perl
perl -pi -e "s/${d$i]}/${b$j]}" *.xml
i am using while loop for the same. if i excute this,it shows "Substitution replacement not terminated at -e line 1.".
please tell me what's wrong this line (1 Reply)
I have 2 files , i need compare both files field by field, and in the fourth field some value will be interchaged and some value will be **.
ex: file1 john|0.0|4|**:25;JP:50;UY:25
file2 john|0.0|4|JP:50;**:25;UY:25 (4 Replies)
I know that
@food = %fruit;
Works. But how do I assign %fruit and %veggies to @food ? (2 Replies)
Discussion started by: popeye
2 Replies
LEARN ABOUT DEBIAN
tie::hash::namedcapture
Tie::Hash::NamedCapture(3perl) Perl Programmers Reference Guide Tie::Hash::NamedCapture(3perl)NAME
Tie::Hash::NamedCapture - Named regexp capture buffers
SYNOPSIS
tie my %hash, "Tie::Hash::NamedCapture";
# %hash now behaves like %+
tie my %hash, "Tie::Hash::NamedCapture", all => 1;
# %hash now access buffers from regexp in $qr like %-
DESCRIPTION
This module is used to implement the special hashes "%+" and "%-", but it can be used to tie other variables as you choose.
When the "all" parameter is provided, then the tied hash elements will be array refs listing the contents of each capture buffer whose name
is the same as the associated hash key. If none of these buffers were involved in the match, the contents of that array ref will be as many
"undef" values as there are capture buffers with that name. In other words, the tied hash will behave as "%-".
When the "all" parameter is omitted or false, then the tied hash elements will be the contents of the leftmost defined buffer with the name
of the associated hash key. In other words, the tied hash will behave as "%+".
The keys of "%-"-like hashes correspond to all buffer names found in the regular expression; the keys of "%+"-like hashes list only the
names of buffers that have captured (and that are thus associated to defined values).
SEE ALSO
perlreapi, re, "Pragmatic Modules" in perlmodlib, "%+" in perlvar, "%-" in perlvar.
perl v5.14.2 2011-09-19 Tie::Hash::NamedCapture(3perl)