Perl 错过了我的 DWIM(三元?:
)并强制使用正则表达式。
perl -e "print $bool ?'T' :'F'"
Use of ?PATTERN? without explicit operator is deprecated at -e line 1.
Search pattern not terminated or ternary operator parsed as search pattern at -e
line 1.
为什么呢?以下两个示例正确解析了三元运算符,
perl -e "print $bool ? 'T' :'F'"
perl -e "print [] ?'T' :'F'"
这是在 Windows 上,但在 *nix 上几乎相同
perl -e 'print $bool ?"T" :"F"'
所以它看起来不像外壳相关。