Thread Frage zu Array? (2 answers)
Opened by alex at 2013-09-30 22:23

Linuxer
 2013-09-30 22:43
#170852 #170852
User since
2006-01-27
3890 Artikel
HausmeisterIn

user image
Einfach ausgedrückt:
Der Regex steht im Listenkontext, und liefert eine Ergebnisliste; die runden Klammern drumherum in Verbindung mit der [0] liefern nun nur das erste Element dieser Ergebnisliste (in Perl wird das Slice genannt).

Einfaches Beispiel:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#! /usr/bin/perl
use strict;
use warnings;
use 5.010;
use Data::Dumper;

my $string = "A1B2C3";

# liefert alle drei Zahlen (beachte Modifier /g)
my @liste = ( $string =~ m/(\d)/g );
say "@liste";

@liste = ( $string =~ m/(\d)/g )[0];
say "@liste";

@liste = ( $string =~ m/(\d)/g )[1,2];
say "@liste";

Last edited: 2013-09-30 22:55:55 +0200 (CEST)
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread Frage zu Array?