Independent of which programming language, what options are there to shorten long switch statements with many similar cases?
From what I've searched, I found answers like this one but my cases are all different with only one integer changing like in a loop.
Regularly I use following switch statement construct in bash/PHP/Python/JavaScript and am looking for a shorter version:
switch ($device) {
// 2ghz
case "n2":
return 1;
break;
case "nne2":
return 2;
break;
case "ne2":
return 3;
break;
case "ene2":
return 4;
break;
case "e2":
return 5;
break;
case "ese2":
return 6;
break;
case "se2":
return 7;
break;
case "sse2":
return 8;
break;
case "s2":
return 9;
break;
case "ssw2":
return 10;
break;
case "sw2":
return 11;
break;
case "wsw2":
return 12;
break;
case "w2":
return 13;
break;
case "wnw2":
return 14;
break;
case "nw2":
return 15;
break;
case "nnw2":
return 16;
break;
// 5ghz
case "n5":
return 17;
break;
case "nne5":
return 18;
break;
case "ne5":
return 19;
break;
case "ene5":
return 20;
break;
case "e5":
return 21;
break;
case "ese5":
return 22;
break;
case "se5":
return 23;
break;
case "sse5":
return 24;
break;
case "s5":
return 25;
break;
case "ssw5":
return 26;
break;
case "sw5":
return 27;
break;
case "wsw5":
return 28;
break;
case "w5":
return 29;
break;
case "wnw5":
return 30;
break;
case "nw5":
return 31;
break;
case "nnw5":
return 32;
break;
// 24ghz
case "n24":
return 33;
break;
case "nne24":
return 34;
break;
case "ne24":
return 35;
break;
case "ene24":
return 36;
break;
case "e24":
return 37;
break;
case "ese24":
return 38;
break;
case "se24":
return 39;
break;
case "sse24":
return 40;
break;
case "s24":
return 41;
break;
case "ssw24":
return 42;
break;
case "sw24":
return 43;
break;
case "wsw24":
return 44;
break;
case "w24":
return 45;
break;
case "wnw24":
return 46;
break;
case "nw24":
return 47;
break;
case "nnw24":
return 48;
break;
default:
return 0;
break;
}