我写了个伪静态比如http://www.xx.com/xx/dd dd/1这样的地址两个dd之间有一个空格,就找不到文件了http://www.xx.com/xx/dddd/1这样的地址就可以找到我的匹配符是 <match url="productlist/[\s\S]*/(\d+?)$" />在网上查了一些资料[\s\S]*表示匹配任意字符包括空格,但是有空格的还是不行 地址会变成这样http://www.xx.com/xx/dd%20dd/1  请朋友们帮忙找一下原因谢谢了!

解决方案 »

  1.   

    %20就是被编码后表示空格的意思http://www1.lob.cn/n1287c31.shtml
      

  2.   

    另外如果你想了解url编码http://blog.csdn.net/yzhz/archive/2007/07/03/1676796.aspx 看这里
      

  3.   

    url中的空格一般用'-'替代,这样看上去比较美观
      

  4.   

    你可以先解码以后再匹配,或者你直接匹配 编码后的 url 需要根据刚才那个对照表
      

  5.   

    先把原来要匹配的字符串解码,然后再匹配string title = Server.UrlDecode(str);解码url
      

  6.   

    #4楼正解。urlencode 和urldecode。
      

  7.   

    四楼正解,结贴了!把之前的url解码!然后在配置文件这样写/.*/搞定拉!谢谢所以回帖的,给分!