正则表达式匹配字母,数字和一些特定字符?

时间:2011-08-22 14:17:23

标签: python regex django

我正在尝试匹配可以包含的Django URL位:

_%&+0-9a-zA-Z (空间)

我怎么能这样做,以便Django的URL匹配器以参数的形式拾取它?

(r'^(?P<chararg>\w+)/IT_NEEDS_TO_BE_HERE/(?P<intarg>\d+)', 'dest')

3 个答案:

答案 0 :(得分:10)

我对%char不太确定,但正则表达式是[_%&+0-9a-zA-Z ]+

答案 1 :(得分:5)

我玩了一下,得到了这个 - [\w\+%_& ]+

所以(r'^(?P<chararg>\w+)/IT_NEEDS_TO_BE_HERE/(?P<intarg>\d+)', 'dest')会变成

(r'^(?P<chararg>\w+)/(?P<arg>[\w\+%_& ]+)/(?P<intarg>\d+)', 'dest')

\w匹配任何单词字符和数字。 \+数学+

编辑:\ d不是必需的。

答案 2 :(得分:5)

由于\w表示[a-zA-Z0-9_],您可以使用:

[%&+ \w]+