【问题标题】:I'm trying to implement a valid Regex pattern我正在尝试实现一个有效的正则表达式模式
【发布时间】:2011-04-27 16:07:04
【问题描述】:

我正在使用下面的正则表达式来匹配三种不同类型的字符串。我很难确定在哪里添加不区分大小写的模式,以匹配大小写(例如re.IGNORECASE([A-Za-z0-9]+))。我应该尝试不同的方法吗?

regex = re.compile( "(%s|%s|%s)" % ( re.escape( userstring ), re.escape( userStrHEX ), re.escape( userStrASCII ) )

【问题讨论】:

    标签: python regex


    【解决方案1】:

    只需将其作为第二个参数添加到@987654321@

    x = re.compile("(%s|%s|%s)" % (re.escape(userstring), re.escape(userStrHEX), re.escape(userStrASCII)), re.IGNORECASE)
    

    为了更容易阅读,我们可以将格式化参数提取到一个单独的元组中:

    args = (re.escape(userstring), re.escape(userStrHEX), re.escape(userStrASCII))
    x = re.compile("(%s|%s|%s)" % args, re.IGNORECASE)
    

    【讨论】:

    • @user706808 @unwind 或args = tuple(map(re.escape,(userstring,userStrHEX,userStrASCII)))
    • @eyquem 谢谢...非常经济的方式!
    猜你喜欢
    • 2018-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多