我正在使用javascript快速验证可能有多个结果的特定网址,我正在尝试使用正则表达式。
var regexNum = new RegExp("[0-9]");
var x = checkPage();
// returns: "/appl/coursemenu/chapter/ (a number here) /"
switch(x){
case "/appl/coursemenu/chapter/"+regexNum+"/":
chapter();
break;
}
所以基本的想法是它是特定网址,但最后必须有一个数字。 (和“/”)
由于
[编辑]
我添加了一个JSFiddle来显示我的代码中出现了什么问题:JSFiddle
答案 0 :(得分:0)
var regexNum = new RegExp("/appl/coursemenu/chapter/[0-9]/");
var x = checkPage();
// returns: "/appl/coursemenu/chapter/ (a number here) /"
if(regexNum.test(x)){
chapter();
}
答案 1 :(得分:0)
如果我理解正确,你需要一个数字(数字组合),然后是斜杠。:
"/appl/coursemenu/chapter/123/".test(/\d+\/$/) --> true (123/)
正则表达式:/\d+\/$/
$
匹配行尾。
\/
与/
匹配
\d+
匹配0
或99999
等。
答案 2 :(得分:0)
如果你想保留switch
声明,还有另一个疯狂的想法:
switch (true) {
case /appl\/coursemenu\/chapter\/\d+\/$/.test(x):
chapter();
break;
...
}