Perl chop e chomp le funzioni possono spesso essere fonte di confusione. Non solo suonano simili, ma fanno cose simili. Sfortunatamente, c'è una differenza critica- chop rimuove completamente l'ultimo carattere della stringa, mentre chomp rimuove solo l'ultimo carattere se è una newline.
chomping $ myName interrompe l'ultima riga, lasciando solo Giacobbe. Una volta che è stato chomp, ulteriori chomping non faranno nulla. Tagliere il nome, tuttavia, comporterà la rimozione dell'ultimo carattere, lasciando Jaco:
Chomping e chopeseguendo il ping di un array si ottiene l'attivazione di ciascun elemento e può essere un vero risparmio di tempo.
Quindi ricorda - Chop taglia l'ultimo personaggio senza domande o rimpianti. Chomp rimosse solo la nuova riga, lasciando intatta la stringa stessa. Chomp non rimuove tutti i caratteri degli spazi bianchi per impostazione predefinita. In effetti, per impostazione predefinita, chomp rimuove solo ciò che è attualmente definito come $ INPUT_RECORD_SEPARATOR. Se il tuo obiettivo è tagliare tutti gli spazi bianchi dalla fine della stringa, prova a utilizzare una regex come questa inviata da un lettore: