Django 表单字段的正则表达式

Zai*_*han 1 python regex django django-forms

我有一个表单字段:

web_address = forms.RegexField(regex=r'^DO SOMETHING$', error_messages = {'invalid': _("Not a valid web address.")})
Run Code Online (Sandbox Code Playgroud)

我无法为上述地址编写正则表达式。我的要求是验证http://maps.google.com/maps/place?cid=1234形式的网址。id 1234 是一个变体,但先验值是不变的。

请帮忙!!!

ste*_*ema 5

只需要知道两件事

  1. ?.是正则表达式中的特殊字符,需要转义
  2. 检查数字,要么使用预定义的类\d,要么定义自己的类[0-9]并至少说一个\d+

所以你的正则表达式应该看起来像

^http://maps\.google\.com/maps/place\?cid=\d+$
Run Code Online (Sandbox Code Playgroud)

如果您想了解有关正则表达式的更多信息,www.regular-expressions.info是一个不错的起点。

要测试正则表达式,您可以使用在线测试器,例如gskinner.com/RegExr/。你可以在这里看到你的正则表达式