Thread einmalige Eintraege in einer Liste filtern (9 answers)
Opened by Gemuese at 2009-08-19 13:43

renee
 2009-08-19 13:53
#124416 #124416
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
So könnte man es machen:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
my @list = (
'Tomate',
'Kartoffel',
'Kartoffel',
'Tomate',
'rote Paprika',
'Blumenkohl',
'Tomate',
);

my %seen;
$seen{$_}++ for @list;

my @single = grep{ $seen{$_} == 1 }keys %seen;
print $_,"\n" for @single;


Edit: Das erste "for" kann man noch zum "grep" packen:
Code (perl): (dl )
my @single = grep{ $seen{$_} == 1 }map{ $seen{$_}++; $_ }@list;

Last edited: 2009-08-19 13:56:00 +0200 (CEST)
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/

View full thread einmalige Eintraege in einer Liste filtern