Javascript 斜杠前最后一个破折号后的匹配字符串
我遇到了一个非常奇怪的问题,我似乎无法解决。我有这样一个路由作为重定向:Javascript 斜杠前最后一个破折号后的匹配字符串,javascript,reactjs,react-router,Javascript,Reactjs,React Router,我遇到了一个非常奇怪的问题,我似乎无法解决。我有这样一个路由作为重定向: /something/(.*-):id/:view? 当我尝试匹配这样的URL时:/something/slug-of-title-106/Steps/123233匹配工作如期进行。我得到了正确的匹配参数,如下所示: "params": { "0": "slug-of-title-", "id": "106", "view": "Steps" } 现在,我在我的URL中保留了一个叫做“步骤”的东西,-2是最后
/something/(.*-):id/:view?
当我尝试匹配这样的URL时:/something/slug-of-title-106/Steps/123233
匹配工作如期进行。我得到了正确的匹配参数,如下所示:
"params": {
"0": "slug-of-title-",
"id": "106",
"view": "Steps"
}
现在,我在我的URL中保留了一个叫做“步骤”的东西,-2
是最后一个“步骤”的指示器。当我有这样的URL时:/explation/slug-of-title-106/Steps/123231,-2
一切都崩溃了,我的匹配结果如下:
"params": {
"0": "slug-of-title-106/Steps/123,231,-",
"id": "2"
}
我已经尝试了所有我知道的正则表达式组合,但我似乎找不到一个好的解决方案。这似乎是一个问题,但您是否尝试过将这些步骤作为查询参数而不是随机添加到URL中?您可以尝试@zfrisch:嗯,我现在必须保持这种方式。我知道将其保存在查询参数中可能更有意义,但即便如此——这不是我现在要找的。@CodeManiac谢谢!它起作用了!我忘了您可以为react路由器参数提供自定义regexp.aa,我收回它@CodeManiac——正如我需要做的那样,它会回到类似这样的东西:“params”:{“0”:“slug of title-”,“id”:“106/Steps”,“view”:“123123,-2”}这看起来确实是个问题,但您是否尝试过将这些步骤作为查询参数而不是随机添加到URL中?您可以尝试@zfrisch:,我现在必须保持这种状态。我知道将其保存在查询参数中可能更有意义,但即便如此——这不是我现在要找的。@CodeManiac谢谢!它起作用了!我忘了您可以为react路由器参数提供自定义regexp.aa,我收回它@CodeManiac——正如我需要做的那样,它会回到类似这样的东西:“params”:{“0”:“slug of title-”,“id”:“106/Steps”,“view”:“123123,-2”}