Funkcja vec
Wbudowana funkcja vec()
traktuje łańcuch jak wektor bitowy. Dzieli go na elementy zgodnie z określonym przeze mnie wzorcem, choć liczba bitów musi być potęgą dwójki. Funkcja vec()
działa podobnie jak substr()
, wyodrębniając części łańcucha, choć operuje tylko na jednym „elemencie” jednocześnie.
Mogę użyć dowolnego łańcucha. W poniższym przykładzie korzystam z elementów 8-bitowych, które odpowiadają (jednobajtowym) znakom:
#!/usr/bin/perl # vec-string.pl my $extract = vec "Oto kolejny haker Perla,", 4, 8; printf "Wyodrębniłem element %s, czyli znak '%s'\n", $extract, chr($extract);
Z wyników widzę, że $extract
to liczba, więc muszę użyć funkcji chr
, aby przekształcić ją z powrotem w znak:
Wyodrębniłem element 116, czyli znak 'k'
Get Perl. Mistrzostwo w programowaniu now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.