タグ

2021年10月4日のブックマーク (1件)

  • Perl における flip-flop 演算子の使い道について - 理系学生日記

    flip-flop 演算子とは、スカラーコンテキストで使用される範囲演算子(Range Operator) のことです。一般にはドット (.) 2 個で構成される演算子として認識されています。 この演算子は 2 つのオペランドを取ります。下記の例では、3 と 5 をオペランドに取っています。 perl -nle 'print if 3 .. 5' bigfile.txt 上記は、bigfile.txt を 1 行ずつ読みこんでいくのですが、bigfile.txt が 1 ~ 2 行目のうちは if 文は false を返します。3 行目になると if 文は true になり、if 文が true として評価されるこの状態は 5 行目まで続きます。そして 6 行目に達して以後は、ずっと false として評価されます。 ここではわざと「状態」という言葉を使いましたが、この演算子は「状態」を持

    Perl における flip-flop 演算子の使い道について - 理系学生日記
    tzccinct
    tzccinct 2021/10/04
    「これを避けるためには、もう一つの flip-flop 演算子である "..." (ドット 3 つ)を使用します。"..." を使用すると、左オペランドで評価された行は、右オペランドの評価には使用されません。」