我很难为django url找到python正则表达式。我有一定的标准,但似乎无法想出神奇的公式。最后,我可以识别哪个页面是CMS页面,并将它应该加载的别名url传递给django函数。
下面是一些匹配的有效字符串示例:
- 关于我们
- 联系我们
- 条款和条件
- 信息/学习-更多-pg2
- 信息/我的示例url
标准:
- 必须全部小写
- 必须包含短划线“-”
- 可以包含数字、字母和斜线“/”
- 必须至少4个字符长,最多30个字符
- 不能包含特殊字符
- 不能包含以下文字:
- .jpg公司
- .gif文件
- .png格式
- .css文件
- .js公司
不应匹配的示例:
- 关于我们(有大写字母)
- 联系人(没有破折号)
- pg(少于4个字符)
- img/bg.gif(包含“.gif”)
- files/my-styles.css(包含“.css”)
- my page@(除字母、数字、短划线或斜线外还有其他字符)
我知道这还不算接近,但这是我所能得到的:
(?P<alias>([a-z/-]{4,30}))
我很抱歉有很大的要求,但我只是不能让我的头缠在这个正则表达式的东西。
谢谢!
Tags:
我很困惑为什么一些评论员发现在regex中很难做到这一点。这正是正则表达式所擅长的。
但是,由于
.
不在允许的字符中,因此实际上不需要检查禁止的文件扩展名。这是我的第一篇文章。 如果需要,请随时纠正我的英语。
我认为以下任何一项都是正确的:
相关问题 更多 >
编程相关推荐