相关疑难解决方法(0)

python中已编译的正则表达式对象的类型

python中编译的正则表达式的类型是什么?

特别是,我想评估

isinstance(re.compile(''), ???)
Run Code Online (Sandbox Code Playgroud)

为了内省目的,这是真的.

我有一个解决方案,有一些全局常数REGEX_TYPE = type(re.compile('')),但它似乎并不优雅.

编辑:我想这样做的原因是因为我有字符串列表和编译的正则表达式对象.我希望将一个字符串与列表"匹配"

  • 对于列表中的每个字符串,尝试检查字符串是否相等.
  • 对于列表中的每个正则表达式,尝试检查字符串是否与给定模式匹配.

我想出的代码是:

for allowed in alloweds:
    if isinstance(allowed, basestring) and allowed == input:
        ignored = False
        break
    elif isinstance(allowed, REGEX_TYPE) and allowed.match(input):
        ignored = False
        break
Run Code Online (Sandbox Code Playgroud)

python regex types

64
推荐指数
6
解决办法
2万
查看次数

标签 统计

python ×1

regex ×1

types ×1