2011-08-22 52 views
0

如果你能得到这种形式的网址:网址中的非典型网址?

http://host/m,2,o,12,s,9508406-wure-toieut-oiewu-toewiu-toerwupto-iuewoptiuewop-te/ 

在网址我有:

url(r'^m,(\d+),o,(?P<itemId>\d+),s,(\s+)/$', show_item_by_id), 

,但是这是行不通的。错误是:

Using the URLconf defined in portal.urls, Django tried these URL patterns, in this order: 
... 
^m,(\d+),o,(?P<itemId>\d+),s,(\s+)/$ 
... 

如何写?

+0

第一个问题是,你的正则表达式包含*** ***,你的url包含*** ***。如果之后仍然有问题,请提供错误信息 –

+0

不,我写错误,url:http:// host/m,2,o,12,s,9508406-wure-toieut-oiewu-toewiu-toerwupto- iuewoptiuewop-te/ – Nips

回答

2

小心男人,\s匹配空格字符。如果你想有一个更广泛的比[a-zA-Z0-9-_]人物,你也可以尝试\S,它匹配所有的非空白字符

url(r'^m,(\d+),o,(?P<itemId>\d+),s,([a-zA-Z0-9-_]+)/$', show_item_by_id), 

:所以,你可能想沿着线试一下。

+0

如果这个网址是:http:// host/m,2,o,12,s,/ – Nips

+0

那么它将不起作用,因为必须至少有一个字符。如果你想让这个URL工作,用'([a-zA-Z0-9 -_] *)替换'([a-zA-Z0-9 -_] +)'' – Drekembe