我很困惑这个perl JAPH如何工作:
perl -e 'print chr(length($_)/3) for @ARGV' Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl! Perl!
为什么length
会为看起来相同的参数返回不同的输出? (Perl!)
答案 0 :(得分:6)
将此命令复制并粘贴到文本编辑器中(在我的例子中,它是vim),你会发现有很多< 200b> “Perl”和“!”之间的字符。
它被称为'ZERO WIDTH SPACE',它是UNICODE角色。 Unicode Character 'ZERO WIDTH SPACE'
答案 1 :(得分:5)
这些实际上是所有不同的字符串,所有字符串都包含不可见的字符。如果您在十六进制编辑器中打开文本,则可以看到它: