Python 使用SQLAlchemy的MySQL正则表达式查询中的括号
我有一个python应用程序,它使用SQLAlchemy搜索数据库,如下所示:Python 使用SQLAlchemy的MySQL正则表达式查询中的括号,python,mysql,regex,sqlalchemy,flask-sqlalchemy,Python,Mysql,Regex,Sqlalchemy,Flask Sqlalchemy,我有一个python应用程序,它使用SQLAlchemy搜索数据库,如下所示: query = raw_input('Search: ') db.session.query(Posts).filter(Posts.name.op('REGEXP')(r'[[:<:]]{}'.format(query))).all() query=raw_输入('Search:')) db.session.query(Posts.filter)(Posts.name.op('REGEXP')(r'[: 在
query = raw_input('Search: ')
db.session.query(Posts).filter(Posts.name.op('REGEXP')(r'[[:<:]]{}'.format(query))).all()
query=raw_输入('Search:'))
db.session.query(Posts.filter)(Posts.name.op('REGEXP')(r'[:
在返回错误后的某个位置包含(不带a)的搜索
之所以会出现这种情况,是因为(
和)
在正则表达式中具有特殊意义。例如,如果有一个左括号而没有右括号,则表达式将无效:
>>> re.compile(r"test (")
Traceback (most recent call last):
File "<console>", line 1, in <module>
...
error: unbalanced parenthesis
在返回错误后的某个位置包含(不带a)的搜索
之所以会出现这种情况,是因为(
和)
在正则表达式中具有特殊意义。例如,如果有一个左括号而没有右括号,则表达式将无效:
>>> re.compile(r"test (")
Traceback (most recent call last):
File "<console>", line 1, in <module>
...
error: unbalanced parenthesis
请找出结果SQL;谁知道SqlAlchemy在做什么。请找出结果SQL;谁知道SqlAlchemy在做什么。我尝试了这个方法,虽然这个方法有效,但是方法。escape()
似乎只是在括号中加了一个反斜杠,所以我在数据库中搜索一些东西,它搜索\(
不是(
。我尝试了这个方法,虽然这个方法有效,但是方法.escape()
似乎只是在括号中添加了一个反斜杠,所以我搜索数据库中的一些东西,它搜索\(
而不是(
)。