加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl三点运算符…示例

发布时间:2020-12-15 21:24:38 所属栏目:大数据 来源:网络整理
导读:任何人可以用一些例子显示..和…运算符之间的确切差异? 从perlop手册页: If you don’t want it to test the right operand until the next evaluation,as in sed,just use three dots (“…”) instead of two. 但这到底是什么意思?我不明白perlop的例子
任何人可以用一些例子显示..和…运算符之间的确切差异?

从perlop手册页:

If you don’t want it to test the right operand until the next
evaluation,as in sed,just use three dots (“…”) instead of two.

但这到底是什么意思?我不明白perlop的例子:

@lines = ("   - Foo","01 - Bar","1  - Baz","   - Quux"
);
foreach (@lines) {
    if (/0/ .. /1/) {
        print "$_n";
    }
}

与…将打印Baz – 但为什么?更确切地说,为什么Baz不打印两个点,只有…?

解决方法

?…?不会在真正的翻转检查后立即进行翻转检查。

用?..?,

>“ – Foo”

> / 0 /返回false。
> ..返回false。

>“01 – 酒吧”

> / 0 /返回true。翻转!
> / 1 /返回true。翻牌! ?
> ..返回true(因为第一个检查为真)。

>“1-Baz”

> / 0 /返回false。
> ..返回false。

>“ – Quux”

> / 0 /返回false。
> ..返回false。

用?…?,

>“ – Foo”

> / 0 /返回false。
> … returns false。

>“01 – 酒吧”

> / 0 /返回true。翻转!
> …返回true。

>“1-Baz”

> / 1 /返回true。翻牌!
> …返回true。

>“ – Quux”

> / 0 /返回false。> … returns false。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读