Aber "'#Kein Kommentar"s Frage find ich schon berechtigt.
Was ist an dieser Fragestellung so grundlegend anders, dass sie mit den Lösungen im alten Thread nicht gelöst werden könnte?
Unabhängig davon, noch eine andere Möglichkeit:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
use strict;
use warnings;
sub finde_server_instanz {
my ($instanz) = @_;
my $return =
$instanz =~ /aja1/ ? 'aja1'
: $instanz =~ /aja2/ ? 'aja2'
: $instanz =~ /aja3/ ? 'aja3'
: undef;
return $return;
}
sub finde_server_instanz2 {
my ($instanz) = @_;
my $return =
$instanz =~ /(aja\d)/ ? $1
: $instanz =~ /(antef\d)/ ? $1
: undef;
return $return;
}
sub finde_server_instanz3 {
my ($instanz) = @_;
my $return =
$instanz =~ /((?:aja|antef)\d)/ ? $1
: undef;
return $return;
}
Möglicherweise wäre auch index() eine betrachtenswerte Funktion als Alternative zum RegEx.
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!