具有正则表达式的Ui-router路由参数

Mat*_*can 2 javascript regex angularjs angular-ui-router

我觉得这很简单,但我不能让它工作......

我正在使用Ui-Router 2.11,它包含带有正则表达式的可选参数 .

我有这个网址,其工作原理

'/event/{eventId:[0-9]}'

它过滤掉所有非数字的东西,但它只适用于1个字符的输入(所以只有0到9).

我想用一个表达式替换它,检查以确保输入中的所有字符都是数字的,所以只要它是所有数字我就可以有任何输入.

我尝试使用此线程中的表达式

'/event/{eventId:^[0-9]+$}'

但它不起作用.其他示例包括我不能使用的正斜杠(通过ui-router文档中的警告).这感觉应该非常简单,我做错了什么?

Eli*_*gem 6

根据链接文档判断,我认为这些表达式中的任何一个都可以解决问题:

'/event/{eventId:[0-9]+}'//match 1 or more digit
'/event/{eventId:[0-9]{1,}}'//same as above, alternative notation
Run Code Online (Sandbox Code Playgroud)

如果可能的话,我会替换[0-9]\d.它看起来更干净.