【问题标题】:Case insensitive Regex in Python [duplicate]Python中不区分大小写的正则表达式[重复]
【发布时间】:2018-07-07 09:47:19
【问题描述】:

我有以下 Python 正则表达式:

re =re.match(r'.*? from\s+(.*?)(\s.*|$)', q)

这里,q 是这样的查询:

Q1 = u"select * from dlpx_jobs where job_id=\\'531\\';"

Q2 = u"select * FROM dlpx_jobs where job_id=\\'531\\';"

现在,显然,对于 Q1,正则表达式有效,因为“from”在查询中是小写的,但对于 Q2,正则表达式不起作用,因为在 Q2 “from”是大写的。

无论“from”是大写还是小写,正则表达式是否可以通过任何方式同时用于查询?

【问题讨论】:

  • 使用内联修饰符(?i)

标签: python regex python-2.7


【解决方案1】:

试试这个:

expr = re.match(r'.? from\s+(.?)(\s.*|$)', q, re.IGNORECASE)

【讨论】:

    猜你喜欢
    • 2019-07-09
    • 1970-01-01
    • 2011-04-22
    • 1970-01-01
    • 1970-01-01
    • 2012-11-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多