1 は true、0 は false
echo 1 ? 'true' : 'false' " => true echo 0 ? 'true' : 'false' " => false
1 より大きい数は true で、0 未満も true
echo 100 ? 'true' : 'false' " => true echo -1 ? 'true' : 'false' " => true
文字と数値を比較するときは、文字列が数値に変換される。文字列が数字でない場合は 0 になる。
echo 100 == '100' " => 1 (true) echo 0 == '0' " => 1 (true) echo 0 == 'zero' " => 1 (true) echo 1 == 'one' " => 0 (false)
文字列を比較するときは 'ignorecase' オプションが使われるので大文字小文字が区別されない。
echo "abc" =~ "ABC" " => 1 (true) " 明示的に大文字小文字を区別する echo "abc" =~# "ABC" " => 0 (false) " 明示的に大文字小文字を区別しない echo "abc" =~? "ABC" " => 1 (true) " 大文字小文字を区別しない echo "abc" ==? "ABC" " => 1 (true)
判定一覧
'ignorecase'次第 | 大小文字考慮 | 大小文字無視 | |
等しい | == | ==# | ==? |
等しくない | != | !=# | !=? |
より大きい | > | ># | >? |
より大きいか等しい | >= | >=# | >=? |
より小さい | < | <# | |
より小さいか等しい | <= | <=# | <=? |
正規表現マッチ | =~ | =~# | =~? |
正規表現非マッチ | !~ | !~# | !~? |
同一のインスタンス | is | ||
異なるインスタンス | isnot |
sleep でスリープ。m はミリ秒、指定しない場合は秒として扱われる。
let counter = 0 while counter < 10 echo counter sleep 1000m let counter += 1 endwhile