Perl Array hacka () och chomp () -funktion

Perl hacka och chomp funktioner kan ofta vara en källa till förvirring. De låter inte bara liknande, de gör liknande saker. Tyvärr finns det en kritisk skillnad -hacka tar bort den sista karaktären i sträng helt, medan chomp tar bara bort det sista tecknet om det är en ny linje.

chomping $ myname stänger av den sista nylinjen och lämnar bara Jacob. När det har blivit chompat kommer ytterligare chomping inte att göra någonting alls. hacka namnet kommer dock att resultera i att det sista tecknet tas bort och lämnar Jaco:

Chomping och hackaping an array resulterar i att varje element agerar och kan vara en realtidssparare.

Så kom ihåg - Hacka hugger av den sista karaktären utan fråga eller ånger. Chomp tog bara bort den nya linjen och lämnade själva strängen intakt. Chomp tar inte bort alla whitespace-tecken som standard. Som standard tar chomp bara bort det som för närvarande definieras som $ INPUT_RECORD_SEPARATOR. Om ditt mål är att trimma allt mellanrum från slutet av din sträng, kan du prova att använda ett regex som det här som skickats in av en läsare:

instagram viewer