如何在JavaScript中将reg exp包含在开关大小写字符串中

问题描述:

我想使用开关大小写和正则表达式压缩不同的urls。如何在JavaScript中将reg exp包含在开关大小写字符串中

这是我创建的代码,但似乎没有有效地工作:

url = window.location.pathname; 
switch(url){ 
    case /\/(en|fr|de|es)\/page1\/: myvar="page1"; break; 
    case /\/(en|fr|de|es)\/page2\/: myvar="page2"; break; 
    ... 
} 

感谢

+1

如何使用'pageN'并将其设置为'myvar'的正则表达式?如果有可能,你可以给一个url的例子吗? – 2015-07-21 12:35:25

一个case将评估所提供的表达式为布尔并在必要时采取这一行动。唯一真正的方法我可以看到这样使用开关情况是:

let url = window.location.pathname; 

switch (true) { 
    case /^mytest$/.test(url): 
    ... 
    break; 
} 

话虽这么说,我真的不建议做这种方式的。

我不完全确定你需要从原始字符串中得到什么,但它看起来像是更容易去掉区域设置段并将剩下的页面作为页面?