# switch 文

# Bash

case .. a) .. ;; ..esac

case "$AAA" in
    aaa ) xx=xx ;;

# ;; は、fallthrough しない
# ;& は、fallthrough する

STRING=abc

case "$STRING" in
    ABC) echo "STRING is ABC" ;;
    abc) echo "STRING is abc" ;;
    xyz | XYZ) echo "STRING is xyz or XYZ" ;;
    ...
esac

# PHP

C系と同じだが、なんか変な動作があった記憶 (TODO)

# PowerShell

switch ($a) {
    'a' { 'A' }
    'b' { 'B' }
    default { 'Z' }
}

オプションがある

  • -r: -Regex
  • -w: -Wildcard
  • -c: -CaseSensitive
  • -e: -Exact

結果を代入できる

# Python

x (ない)

# Ruby

case .. when .. else .. end

case country
when 'Japan'
  puts 'Ohayo!'
when /^Deuts.*/
  puts 'Guten morgen!'
else
  puts 'Good morning!'
end

# Swift

switch country {
case "slash"    : k = "?"
case "four"     : k = "$"
default         : break
}

[ 📩 ご意見 ]