gpt4 book ai didi

perl - perl 中的 ~~ 是做什么的?

转载 作者:行者123 更新时间:2023-12-01 05:03:33 25 4
gpt4 key购买 nike

我看到了这段代码,但无法理解它在做什么它编译成功了。我搜索了 ~~ OPERATOR 但没有成功。

 unless ($1 ~~ @tables) {
push @tables, $1;
}

最佳答案

引用:http://perldoc.perl.org/perlop.html#Smartmatch-Operator

首先在 Perl 5.10.1 中可用(5.10.0 版本表现不同),二进制 ~~ 在其参数之间进行“智能匹配”。

~~运算符“多态”地比较其操作数,根据它们的实际类型(数字、字符串、数组、散列等)确定如何比较它们。就像与它具有相同优先级的相等运算符一样,~~ true 返回 1,false 返回 ""。通常最好大声朗读为“in”、“inside of”或“is contained in”,因为左操作数通常在右操作数内查找。这使得智能匹配操作数的操作数顺序通常与常规匹配运算符相反。换句话说,“较小”的东西通常放在左边的操作数,较大的放在右边。

关于perl - perl 中的 ~~ 是做什么的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16518658/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com