Intelligencia URL ReWriter映射与正则表达式

时间:2010-03-25 20:18:29

标签: asp.net regex url-rewriting

我在我的asp.net Web应用程序中使用Intelligencia URL重写器。 我使用web.config映射

我正在尝试映射以下网址:

  

www.mydomain.com/product-deals/manufacturer-model_PRODUCTId.aspx

要:

  

www.mydomain.com/ProductInfo.aspx?productID=xxx

显然在上面的示例中,xxx被替换为“友好”网址中的“productId”。

在我的web.config中,我到目前为止:

<rewrite url="~/contract-deals/([\w-_]+)/_(.+).aspx" to="~/ProductInfo.aspx?productId=$1"/>

然而,这不起作用。

我需要正确的正则表达式来满足我的要求(正则表达式真的不是我的强项!!)

1 个答案:

答案 0 :(得分:0)

一个问题是你的样本中的产品交易和正则表达式中的合约交易。

接下来,你的正则表达式有一个额外的斜杠,你不会逃避点(尽管它可以匹配一个点)。此外,$1指的是第一个捕获组,在您的情况下是“制造商模型”。

这个正则表达式可以让你得到你想要的东西:

product-deals/[\w_-]+_(.+)\.aspx