python - Django、MySQL 和正则表达式 : not supporting re syntax?

标签 python mysql regex django

复杂的语法如:

Model.objects.filter(url__iregex=r'^\S+\/\d+\/\S+$')

不起作用。但是我留下了应该转义的部分字符串,未转义的部分会返回元素:

Model.objects.filter(url__iregex=r'^http://www.c')

我做错了什么,或者 Django 中的 MySQL 不支持正则表达式?

最佳答案

您需要对表达式使用 MySQL REGEXP 语法:

^[^[:space:]]+/[0-9]+/[^[:space:]]+$

在哪里

  • ^ - 字符串的开始
  • [^[:space:]]+ - 1 个或多个空格以外的字符
  • / - / 符号
  • [0-9]+ - 1 个或多个数字
  • / - 一个/
  • [^[:space:]]+ - 1 个或多个空格以外的字符
  • $ - 字符串结尾。

More details on REGEXP syntax

关于python - Django、MySQL 和正则表达式 : not supporting re syntax?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35999123/

相关文章:

python - 如何在 Pandas 中显示正确的日期世纪?

mysql - My Sql 事件的“选择”和 'insert into' 多行

Python 正则表达式匹配引号之间的文本

python - Django,自定义模板过滤器 - 正则表达式问题

python - TensorFlow GPU Linux 安装

python3 只有一个目录被导入到命名空间包中

javascript - 将单个 mysql 值存储到 javascript 变量中

php - 在 MySQL 的 X 或 Y 列中返回不同的值

java - 正则表达式包括和排除特殊字符

python - 从任务栏删除窗口,Windows 7