我在我的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"/>
然而,这不起作用。
我需要正确的正则表达式来满足我的要求(正则表达式真的不是我的强项!!)
答案 0 :(得分:0)
一个问题是你的样本中的产品交易和正则表达式中的合约交易。
接下来,你的正则表达式有一个额外的斜杠,你不会逃避点(尽管它可以匹配一个点)。此外,$1
指的是第一个捕获组,在您的情况下是“制造商模型”。
这个正则表达式可以让你得到你想要的东西:
product-deals/[\w_-]+_(.+)\.aspx