scusate ma ho un dubbio:
if ($campo =~ m/^1/) {
bla bla.....
}
Significa se il campo inizia con un 1 allora esegui bla bla??
Sì
non riesco a capire se ho scritto correttamente la regular expression...perchè non mi esegue il codice dentro all'if....
Forse la variabile $campo non inizia con 1 ma sono presenti degli spazi in testa! Se così fosse dovresti passare $campo ad una funzione che elimina gli spazi in testa alla stringa.
codice:
#!usr/bin/perl
print "inserisci un valore:";
chomp($campo=<STDIN>);
$campo = &trim($campo); #chiamo la funzione che elimina gli spazi
if($campo=~ m/^1/)
{
print "ciao\n";
}
else
{
print "non inizio con 1\n";
}
sub trim
{
$string = shift;
$string =~ s/^\s+//g; #elimino gli spazi in testa alla stringa
$string =~ s/\s+$//g; #elimino gli spazi in coda alla stringa. Nel tuo caso forse superfluo
return $string;
}
spero di esserti stato utile.
ciao,
luxxa