kubo39's blog

ただの雑記です。

case文で範囲を指定する方法

いつも忘れてしまう。

string f(char c)
{
  switch (c) {
  case 'a': .. case 'z':
    return "Lower letter!";
  case 'A': .. case 'Z':
    return "Upper letter!";
  default:
    return "Non-alphabetical character!";
  }
  assert(false);
}

unittest
{
  assert(f('f') == "Lower letter!");
  assert(f('F') == "Upper letter!");
  assert(f(' ') == "Non-alphabetical character!");
}