python - check string包含一个有效的正则表达式python

时间:2016-03-23 04:00:54

标签: python regex

为了检查字符串是否是有效的正则表达式python。

示例:

asdasd="([0-9]{1})";APRI="([0-9]{9})";ADD="([0-9]{1})"

如何检查字符串是否包含有效的正则表达式?

谢谢,

3 个答案:

答案 0 :(得分:4)

应用EAFP approach编译表达式并处理错误。

例如,不平衡的括号:

>>> import re
>>> re.compile(r"(test")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/user/.virtualenvs/so/lib/python2.7/re.py", line 194, in compile
    return _compile(pattern, flags)
  File "/Users/user/.virtualenvs/so/lib/python2.7/re.py", line 251, in _compile
    raise error, v # invalid expression
sre_constants.error: unbalanced parenthesis

答案 1 :(得分:1)

EAFP

编译并查看。

re.compile(asdasd)

答案 2 :(得分:0)

在Online Regex Tester中试用你的正则表达式代码

https://regex101.com/

你的第一个例子: https://regex101.com/r/gN1tG8/1