脳汁portal

アメリカ在住(だった)新米エンジニアがその日学んだIT知識を書き綴るブログ

JavaScriptのSwitch文で正規表現を使う方法

タイトルの通りJavaScriptのSwitch文のcaseで正規表現を使う方法です。

var str = 'foo';

switch (true) {
    case /^(hoge|fuga)$/.test(str):
        alert(RegExp.$1);
        break;
    case /^(foo|bar)$/.test(str):
         alert(RegExp.$1);
         break;
}
  • 一度switch文をtrueで通してしまった後に各caseで正規表現の判定を行います
  • 正規表現に何があてはまったかは、RegExp.${1~9}の数字で確認できます
  • /^(ワード1|ワード2)$/という形で正規表現を使うことで、厳密に当てはまるものだけをpickupすることができます

(今回でいうとfoooや、ffoo、foofooをはじけます。)