2010-03-25 53 views
1

我在我的asp.net web应用程序中使用Intelligencia URL重写器。 我使用的web.config映射Intelligencia URL ReWriter与正则表达式映射

我试图映射以下网址:

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

要:

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

显然在上面的例子中,xxx从“友好”url中的“productId”中被替换。

在我的web.config中,我走到这一步:

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

这不但是工作。

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

回答

0

的一个问题是,你必须在你的正则表达式样本中产品的交易和合同交易。

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

此正则表达式应该得到你想要的东西:

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

伟大的工作,谢谢 – Alex 2010-03-27 13:15:18