10 Einträge, 1 Seite |
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
$muster = '(\d)\.([^\D])';
$text = 4.12;
if (@zahlen = $text =~ m/$muster/)
{print "(1) wahr: @zahlen\n";}
else
{print "(1) falsch: @zahlen\n";} # $1 ist 4 und $2 ist 1, deshalb wahr
if (@zahlen = $text !~ m/$muster/)
{print "(2) wahr: @zahlen\n";}
else
{print "(2) falsch: @zahlen\n";} # warum wahr:
$text = 4.0;
if (@zahlen = $text =~ m/$muster/)
{print "(3) wahr: @zahlen\n";}
else
{print "(3) falsch: @zahlen\n";} #warum falsch:
if (@zahlen = $text !~ m/$muster/)
{print "(4) wahr: @zahlen\n";}
else
{print "(4) falsch: @zahlen\n";} # warum wahr: 1
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
$muster = '(\d)\.([^\D])';
$text = 4.12;
if (@zahlen = $text =~ m/$muster/)
{print "(1) wahr: ", scalar @zahlen, "\n";}
else
{print "(1) falsch: ", scalar @zahlen, "\n";} # $1 ist 4 und $2 ist 1, deshalb wahr
if (@zahlen = $text !~ m/$muster/)
{print "(2) wahr: ", scalar @zahlen, "\n";}
else
{print "(2) falsch: ", scalar @zahlen, "\n";} # warum wahr:
$text = 4.0; # <- == 4, du wolltest eigentlich '4.0'
if (@zahlen = $text =~ m/$muster/)
{print "(3) wahr: ", scalar @zahlen, "\n";}
else
{print "(3) falsch: ", scalar @zahlen, "\n";} #warum falsch:
if (@zahlen = $text !~ m/$muster/)
{print "(4) wahr: ", scalar @zahlen, "\n";}
else
{print "(4) falsch: ", scalar @zahlen, "\n";} # warum wahr: 1
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
$muster = qr'(\d)\.(\d)';
$text = 4.12;
if (@zahlen = $text =~ m/$muster/)
{print "(1) wahr: @zahlen\n";}
else
{print "(1) falsch: @zahlen\n";} # $1 ist 4 und $2 ist 1, deshalb wahr
if (@zahlen = $text !~ m/$muster/)
{print "(2) wahr: @zahlen\n";}
else
{print "(2) falsch: @zahlen\n";} # warum wahr: weil @zahlen immernoch die Ergebniss von vorher enthält
$text = 4.0;
if (@zahlen = $text =~ m/$muster/)
{print "(3) wahr: @zahlen\n";}
else
{print "(3) falsch: @zahlen\n";} #warum falsch: weil 4.0 zu 4 wird
if (@zahlen = $text !~ m/$muster/)
{print "(4) wahr: @zahlen\n";}
else
{print "(4) falsch: @zahlen\n";} # warum wahr: 1 weil das Muster eben nicht gefunden wird -> Ergebnis leer
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
sub echo
{
my ($text, @array) = @_;
print "$text :";
print " [", (join "][", map { defined $_ ? $_ eq "" ? "leer" : $_ : "undef" } @array ), "]\n";
}
$muster = '(\d)\.([^\D])';
$text = 4.12;
if (@zahlen = $text =~ m/$muster/)
{ echo "(1) wahr", @zahlen}
else
{echo "(1) falsch", @zahlen}
if (@zahlen = $text !~ m/$muster/)
{echo "(2) wahr", @zahlen}
else
{echo "(2) falsch", @zahlen}
$text = 4.0;
if (@zahlen = $text =~ m/$muster/)
{echo "(3) wahr", @zahlen}
else
{echo "(3) falsch", @zahlen}
if (@zahlen = $text !~ m/$muster/)
{echo "(4) wahr", @zahlen}
else
{echo "(4) falsch", @zahlen}
10 Einträge, 1 Seite |