11-10-2008
Searching array of arrays in perl
Suppose there are two arrays of arrays:
@A = ( [A, 1], [B, 3], [C, 4], [D, 6] );
@B = ( [A, 2], [B, 5], [C, 3], [A, 3], [E, 7] );
For each of $A[0][0], $A[1][0], $A[2][0]..., I want to find the corresponding one in @B (match the letter, like $A[1][0] eq $B[1][0]), and print out both the second item, for example, $A[1][1] and $B[1][1].
How can I do this in perl? grep + map? Hope I clarify the problem here.
Thanks a lot!
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I am writing a bash shell script. I would like to execute a statement only if an array contains a specific value. For example:
array=(1 3 5 7)
I would like to execute the statement only if the value 3 is present in ${array}.
Thanks for any help,
Mike (1 Reply)
Discussion started by: msb65
1 Replies
2. Shell Programming and Scripting
Hi,
I am trying to assign an array as a value to one of the array element, I mean
I have an array @KS and array @kr.
I want array @KS to hold @kr as an element.
So I am doin this
$KS=@kr;
But the value stored is number of elements in the @kr array.
Can... (2 Replies)
Discussion started by: eamani_sun
2 Replies
3. Programming
Hi All
I need to get <STDIN> from a user. the <STDIN> is a range of number delimited by "," (comma) and can be with range delimited by "-".
Example: 1,2,3,4-9,12,15,34-36,70
Now I need to get this from the user and go on each number and "Do something"... but when trying to do this as above... (2 Replies)
Discussion started by: RedGrinGo
2 Replies
4. Shell Programming and Scripting
I have 2 arrays:
@array1 outputs the following:
1
1
1
2
@array2 outputs the following
A
B
C
D (2 Replies)
Discussion started by: streetfighter2
2 Replies
5. Shell Programming and Scripting
here is what i have...
i=1
while read line
do
if grep -i-q "create procedure"<<<$line
then
startline="$line"
endline="blahblah"
Get procedure name into a variable named procName
procName="procedure name is stored"
do some... (2 Replies)
Discussion started by: vivek d r
2 Replies
6. Shell Programming and Scripting
I am writing the code in perl.
I have an array in perl and each variable in the array contains the data in the below format
Now I need to check the below variable w.r.t system month I need to store the date and time(Tue Aug 7 03:54:12 2012) from the below data into file if contains only 'Aug'... (5 Replies)
Discussion started by: giridhar276
5 Replies
7. Shell Programming and Scripting
hello,
i need a bit of help on how to do this effectively in bash without a lot of extra looping or massive switch/case
i have a long array of M elements and a short array of N elements, so M > N always. M is not a multiple of N.
for case 1, I want to stretch N to fit M
arrayHuge
H = (... (2 Replies)
Discussion started by: f77hack
2 Replies
8. Programming
I hate I'm asking for help again. Unfortunately it seems there just aren't any links I can find on making an array that holds a bunch of two dimensional arrays. Maybe my google-fu is lacking. Basically I have a header file like this:
#define MATRIX 10
int white_l1;
int white_l2;
int... (2 Replies)
Discussion started by: Azrael
2 Replies
9. Programming
Corona688 was great in helping me learn how to create arrays that hold other two dimensional array here. Unfortunately I didn't think ask about how to implement or call them. Basically, I'm trying to call an array of two-dimensional arrays like this:
declaration:
int (*side_one) = { { white_l1,... (6 Replies)
Discussion started by: Azrael
6 Replies
10. Programming
Le sigh... Hopefully this will be the last time I have to ask for help on this topic. For a while now I've been working with a 1d array that holds 2d arrays. For reference you can view here. Now I'm just trying to loop through the elements with the following:
#include <stdio.h>
void... (3 Replies)
Discussion started by: Azrael
3 Replies
LEARN ABOUT PHP
array_merge
ARRAY_MERGE(3) 1 ARRAY_MERGE(3)
array_merge - Merge one or more arrays
SYNOPSIS
array array_merge (array $array1, [array $...])
DESCRIPTION
Merges the elements of one or more arrays together so that the values of one are appended to the end of the previous one. It returns the
resulting array.
If the input arrays have the same string keys, then the later value for that key will overwrite the previous one. If, however, the arrays
contain numeric keys, the later value will not overwrite the original value, but will be appended.
Values in the input array with numeric keys will be renumbered with incrementing keys starting from zero in the result array.
PARAMETERS
o $array1
- Initial array to merge.
o $...
- Variable list of arrays to merge.
RETURN VALUES
Returns the resulting array.
EXAMPLES
Example #1
array_merge(3) example
<?php
$array1 = array("color" => "red", 2, 4);
$array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4);
$result = array_merge($array1, $array2);
print_r($result);
?>
The above example will output:
Array
(
[color] => green
[0] => 2
[1] => 4
[2] => a
[3] => b
[shape] => trapezoid
[4] => 4
)
Example #2
Simple array_merge(3) example
<?php
$array1 = array();
$array2 = array(1 => "data");
$result = array_merge($array1, $array2);
?>
Don't forget that numeric keys will be renumbered!
Array
(
[0] => data
)
If you want to append array elements from the second array to the first array while not overwriting the elements from the first
array and not re-indexing, use the + array union operator:
<?php
$array1 = array(0 => 'zero_a', 2 => 'two_a', 3 => 'three_a');
$array2 = array(1 => 'one_b', 3 => 'three_b', 4 => 'four_b');
$result = $array1 + $array2;
var_dump($result);
?>
The keys from the first array will be preserved. If an array key exists in both arrays, then the element from the first array will
be used and the matching key's element from the second array will be ignored.
array(5) {
[0]=>
string(6) "zero_a"
[2]=>
string(5) "two_a"
[3]=>
string(7) "three_a"
[1]=>
string(5) "one_b"
[4]=>
string(6) "four_b"
}
Example #3
array_merge(3) with non-array types
<?php
$beginning = 'foo';
$end = array(1 => 'bar');
$result = array_merge((array)$beginning, (array)$end);
print_r($result);
?>
The above example will output:
Array
(
[0] => foo
[1] => bar
)
SEE ALSO
array_merge_recursive(3), array_replace(3), array_combine(3), array operators.
PHP Documentation Group ARRAY_MERGE(3)