Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 使正则表达式精确匹配两个字符串字_Regex_Asp.net Mvc_Asp.net Mvc 3_Asp.net Web Api_Asp.net Web Api2 - Fatal编程技术网

Regex 使正则表达式精确匹配两个字符串字

Regex 使正则表达式精确匹配两个字符串字,regex,asp.net-mvc,asp.net-mvc-3,asp.net-web-api,asp.net-web-api2,Regex,Asp.net Mvc,Asp.net Mvc 3,Asp.net Web Api,Asp.net Web Api2,我正在研究WebAPI2的属性路由。我正在尝试实现一个包含正则表达式的路由 Url应该是这样的 /xyz/sale /xyz/rent 我尽了最大的努力,在谷歌上搜索了很多东西,但都在网上。我试过的是 [Route(@"xyz/{Type:^sale|rent$}")] 但它给出了以下错误 The inline constraint resolver of type 'DefaultInlineConstraintResolver' was unable to resolve the

我正在研究WebAPI2的属性路由。我正在尝试实现一个包含正则表达式的路由

Url应该是这样的

/xyz/sale
/xyz/rent
我尽了最大的努力,在谷歌上搜索了很多东西,但都在网上。我试过的是

[Route(@"xyz/{Type:^sale|rent$}")]
但它给出了以下错误

The inline constraint resolver of type 'DefaultInlineConstraintResolver' 
was unable to  
resolve the following inline constraint: '^sale|rent$'.
这是错误的屏幕截图

请帮帮我。谢谢

那么:

[Route("xyz/{Type:regex(sale|rent)}")]
如果没有,请尝试:

[Route("xyz/{Type:regex(^(sale|rent)$)}")]

你可以在这里看到,如果你使用:
[Route(“xyz/{Type:(sale | rent)}”)]
@OGHaza:-(不,我试过了,但不起作用。我认为关键的区别在于正则表达式周围使用了括号,这是您链接的页面上的示例所使用的。也许这就是它将正则表达式约束与其他约束关键字区分开来的方式。我完全没有主意。正如Wiseguy所说,无论解决方案如何,都需要
()
围绕它。这与您刚才在注释中尝试的相同-因此它不起作用。您能粘贴它给出的错误吗?