Leser: 19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#!/usr/bin/perl use strict; use warnings; my @array = qw{jacke jeans shirt (kleidung) maus katze hund (tier) (kleidung) (tier)}; my @kleidung = ("jacke"); my @tiere=("Elephant"); for my $element (@array) { $element=~s/\(kleidung\)/$kleidung[0]/; $element=~s/\(tier\)/$tiere[0]/; } print "@array\n";
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
#!/usr/bin/perl use strict; use warnings; use Data::Dumper; my @list = qw{jacke jeans shirt (kleidung) maus katze hund (tier) (kleidung) (tier)}; my %lut = ( "(kleidung)" => "jacke", "(tier)" => "elephant", ); print Dumper [map { exists $lut{$_} ? $lut{$_} : $_ } @list];
1 2 3 4 5
for my $element (@final_output) { my $counter = @tiere; my $put_in = rand($counter); $element=~s/\(tiere\)/$tiere[$put_in]/; }
2009-05-11T18:30:30 LumpiIch würde jetzt irgendwie mit einer if Schleife
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
#! /usr/bin/perl use strict; use warnings; my @tiere = qw( hund katze maus ); my @list = qw( affe (tier) fisch (tier) laus ); for my $item ( @list ) { if ( $item eq '(tier)' ) { # setze $item auf ein zufaellig ermitteltes element # aus @tiere; das element wird dabei aus @tiere # entfernt (um doppelte werte zu vermeiden) $item = splice( @tiere, int(rand(@tiere) ), 1 ); } } $, = "\n"; print @list;
1 2 3 4 5 6
for my $element (@final_output) { # "e" bedeutet perl innerhalb des Ersetungsteil ausführen, # nicht nur Variablen ersetzen # "g" bedeutet global arbeiten, alles ersetzen. $element=~s/\(tiere\)/$tiere[rand(@tiere)]/eg; }