Leser: 1
|< 1 2 >| | 12 Einträge, 2 Seiten |
my ($erste_zahl) = $string =~ m/(\d+)/
renee+2007-09-03 16:29:43--@sid_burn: Es ist nach der Position und nicht nach der Zahl gefragt ;-)
Quotewie finde ich die erste zahl in einem string,
1 2 3
my $string = 'Ich suche ein Zahl 123 oder irgendetwas anderes 23.'; my ($erste_zahl) = $string =~ m/(\d+)/; printf "Es wurde [%d] beginnend an Position %d bis Position %d gefunden.\n", $erste_zahl, $-[1], $+[1];
1 2 3 4 5 6 7 8 9 10
my $string = 'In Diesem 1en String sollen mehr als 10 Zahlen vorkommen.'. '2 Zahlen habe ich schon geschrieben. 4 sind mir zu viele.'; print "Nr: Zahl: Begin: Ende:\n"; print "--------------------------\n"; my $num = 1; while ( $string =~ m/(\d+)/g ) { printf "%3d %8d %6d %6d\n", $num++, $1, $-[1], $+[1]; }
1 2 3 4 5 6 7 8 9 10 11
my $string = 'Ich suche ein Zahl 123 oder irgendetwas anderes 23.'; if( my ($erste_zahl) = $string =~ m/(\d+)/ ) { my $pos = index( $string, $1 ); printf "Es wurde [%d] beginnend an Position %d bis Position %d gefunden.\n", $erste_zahl, $pos, $pos + length( $erste_zahl); } # oder: if( my ($prefix, $ersteZahl ) = $string =~ /^(\D*)(\d+)/ ) { printf "Position: %d\tZahl: $ersteZahl\n", length( $prefix ); }
Strat+2007-09-04 11:20:42--wenn man $- und $+ nicht verwenden will:
[...]
|< 1 2 >| | 12 Einträge, 2 Seiten |