pos*_*ist 17 python regex exception
我无法从Python文档中看出re.compile(x)函数是否可能抛出异常(假设您传入一个字符串).我想有些东西可以被认为是无效的正则表达式.更大的问题是,我在哪里可以找到给定的Python库调用是否会抛出异常以及它们是什么?
Bla*_*rad 12
那么,re.compile
可以肯定地:
>>> import re
>>> re.compile('he(lo')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python25\lib\re.py", line 180, in compile
return _compile(pattern, flags)
File "C:\Python25\lib\re.py", line 233, in _compile
raise error, v # invalid expression
sre_constants.error: unbalanced parenthesis
Run Code Online (Sandbox Code Playgroud)
文档确实以迂回的方式支持这一点 - 检查"模块内容"页面的底部是否有(简要)描述error
异常.
不幸的是,我对这个一般性问题没有任何答案.我想各种模块的文档在质量和彻底性方面各不相同.如果有您感兴趣的特定模块,您可以对它们进行反编译(如果是用Python编写的),或者甚至查看源代码,如果它们在标准库中.