3

我想要一个只有 2 个选项的 Django URL/module/in//module/out/

我正在使用

url(r'^(?P<status>\w+[in|out])/$', 
'by_status', 
name='module_by-status'),

但它匹配其他模式,如/module/i/,/module/n//module/ou/.

任何提示表示赞赏:)

4

2 回答 2

10

尝试r'^(?P<status>in|out)/$'

您需要删除\w+,它匹配一个或多个字母数字字符或下划线。bstpierre 的答案中建议的正则表达式'^(?P<status>\w+(in|out))/$'will matchhelloin等等good_byeout

|请注意,如果您在 url 模式中使用竖线(竖线)字符,Django无法反转正则表达式。如果您需要在模板中使用 url 标签,则需要编写两种 url 模式,一种 forin和一种 for out

于 2009-10-02T15:32:27.050 回答
1

您想要 (in|out),您使用的 [] 表示包含字符“i”、“n”、“|”、“o”、“u”、“t”的字符类。

于 2009-10-01T21:39:59.853 回答