Sunday, January 2, 2011

Perl: Splice function

Method 1:

use strict;
use warnings;

my @names = ("Muriel", "Sarah", "Susanne", "Gavin");
my @middle;

# Define the subroutine first
sub look {
    print "Names : @names\n";
    print "The Splice Girls are: @middle\n\n";
}

# First call (at this point, @middle is empty)
look();

# Perform the splice
@middle = splice(@names, 1, 2);

# Second call (now @middle contains Sarah and Susanne)
look();


OUTPUT:

Names : Muriel Sarah Susanne Gavin
The Splice Girls are:

Names : Muriel Gavin
The Splice Girls are: Sarah Susanne

Method 2:

@names=("Muriel","Gavin","Susanne","Sarah");
@cities=("Brussels","Hamburg","London","Breda");

&look;

splice (@names, 1, 0, @cities[1..3]);

&look;

sub look {
        print "Names : @names\n";
        print "Cities: @cities\n";
}


OUTPUT:

Names : Muriel Gavin Susanne Sarah
Cities: Brussels Hamburg London Breda
Names : Muriel Hamburg London Breda Gavin Susanne Sarah
Cities: Brussels Hamburg London Breda

No comments: