использовать имена функций в карте Perl - PullRequest
2 голосов
/ 25 сентября 2019

Я играл с этим фрагментом кода, чтобы напечатать список символов:

perl -e 'print join(" ", map { sprintf "%02x", ord }  grep /\s/, map { chr } 0x0 .. 0x7F )'

Есть ли более простой способ написать map { chr } 0x0 .. 0x7F?

Я пробовал:

map \&chr 0x0 .. 0x7F

Но я получаю синтаксическую ошибку.

1 Ответ

5 голосов
/ 25 сентября 2019

map { chr } 0x00 .. 0x7F уже довольно лаконичен, но в дополнение к синтаксису map BLOCK LIST существует также синтаксис map EXPR,LIST.

map chr,0x00..0x7f
map chr,0..127
...