我在 perl 文档中读到的 perl 标识符应该是一个单词字符
。 (不包括特殊的 perl 变量)。
我在网上的某个地方看到了这个示例脚本:
use 5.018;
use utf8;
my($𐂯 , $𐂮 , $𐃘 , $𐂂 ) = (1..4);
say "$𐂂 " if( $𐂮 + $𐂯 == $𐃘 );
而且它没有任何错误。那么,perl 允许一些“骨头和箭头之类”的字符作为变量名吗?
最佳答案
任何匹配 \p{Word}
的东西都可以用在 Perl 的标识符名称中。 Unicode 标准定义了大量具有该属性的字符。
use utf8
用法很重要;这告诉 Perl 源文件本身是用 UTF-8 编码的,因此这些字符可以在代码中显示为文字。
例如,代码中的一个字符是 LINEAR B IDEOGRAM B254 DART . Unicode 字符数据库表示这是包含在 Word 字符集中的“其他字母”。
关于perl - 为什么这个带有奇怪变量名的 perl 脚本有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24744102/