Frage : überprüfen, ob Benutzer im Durcheinander existiert - was sind ich falsch tuend?

Hi

I ließ dieses schnelle Indexe überprüfen, ob die Benutzer in einer Akte in ein hash.

this ist die Akte geladen werden: (txt Akte)
quintus
renee
usera
userb

and dieses ist der Index:

$capfile = „Weg zum zu archivieren“;

mein $x = 0;
öffnen sich (MIT EINER KAPPE BEDECKT, $capfile) || sterben „kann nicht geöffnete Akte $capfile: $! “;
während (mein $line = ) {
$caplist {$line} = $x;
      $x ++ ;
}
schließen (MIT EINER KAPPE BEDECKT);

if (existiert $caplist {„renee“}) {
der Druck „zutreffend“;
}


Why sind ich ein „zutreffendes“ nicht erhalten?

Antwort : überprüfen, ob Benutzer im Durcheinander existiert - was sind ich falsch tuend?

Sie entfernen die schleppenden Buchstaben des Zeilenenden \ n nicht von Ihrer Eingangsakte, die Sie in $line setzen, also „renee“ existiert nicht in Ihrem Durcheinander, aber „renee \ n“ wurde.

Sie können chomp der Eingang von Ihrer Textdatei, dieses wie below oben löschen, das den Trick tun sollte.

  während (mein $line = ) {
      chomp $line;
      $caplist {$line} = $x;
      $x ++;
   }
Weitere Lösungen  
 
programming4us programming4us