1
2
3
4
5
6
# ergebnis von (pattern match gegen $_) im numerischen Kontext
$ perl -wle '$_="h1"; $b=0; $b += m/[!]/; print $b'
0
# dito, diesmal mit erfolgreichem Match
$ perl -wle '$_="h1"; $b=0; $b += m/[1]/; print $b'
1
Guest leaves-Ich habe die Abfrage eingebaut:
if ($s1 <= $plzsuche && $plzsuche != /[§]/ && $s3 >= $plzsuche && $plzsuche != /[a-zA-Z]/ ) {
Damit werden auch Eingaben abgefangen die z.B. ! oder " oder ? lauten. Also alle Sonderzeichen. Ich verstehe aber nicht warum?
if ($s1 <= $plzsuche && $plzsuche != /["]/ && $s3 >= $plzsuche && $plzsuche != /[a-zA-Z]/ ) {
führt zum selben Ergebnis wie oben!
Guest leaves-ich meinte auch $plzsuche !~ /[a-zA-Z]/.
[...]
Die Abfrage if ($s1 <= $plzsuche && $plzsuche != /[§]/ && $s3 >= $plzsuche && $plzsuche != /[a-zA-Z]/ ) {
1 2 3 4 5 6 7 8
if ( $plzsuche =~ m{\D} ) { # $plzsuche enthaelt eine Nichtziffer => Fehler die "Fehler: PLZ Suche ist nicht gültig (nur ganze Zahlen erlaubt): $plzsuche\n"; } # So könnte es dann weitergehen ... elsif ( $s1 <= $plzsuche && $s3 >= $plzsuche ){ # ... }