Django URL正则表达式:使URL容忍int或float值

Sim*_*mon 2 python regex django url numbers

url格式为: domain/startValue/endValue/content

这里,startValue和endValue采用int或float数字.

我试过: /(\d+)/(\d+)它接受int值

和:

/(\d+\.\d+)/(\d+\.\d+) 它取浮点值

但不知道如何把它们放在一起,它采用两种格式的数字

尝试:

 /(\d+)|(\d+\.\d+)/(\d+)|(\d+\.\d+)
Run Code Online (Sandbox Code Playgroud)

浏览器告知url与视图函数参数不匹配

谢谢你的建议!

bri*_*anz 7

由于你总是以整数开头,只需使用?正则表达式运算符使浮点部分可选,并使用非捕获组:

intorfloat_re = "(\d+(?:\.\d+)?)"
Run Code Online (Sandbox Code Playgroud)

..并在您的网址定义中使用该字符串.