Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何捕获python语法错误? 试试看: 图案=r“ 除: 尝试: 图案=r“” 除: 模式=r“”_Python_Regex_Error Handling_Try Except - Fatal编程技术网

如何捕获python语法错误? 试试看: 图案=r“ 除: 尝试: 图案=r“” 除: 模式=r“”

如何捕获python语法错误? 试试看: 图案=r“ 除: 尝试: 图案=r“” 除: 模式=r“”,python,regex,error-handling,try-except,Python,Regex,Error Handling,Try Except,我正在通过一个工具编写正则表达式,然后生成python代码。在某些情况下,我需要使用“或”或“或”来包装正则表达式。我想试试[排除错误]。如果捕获到错误,那么我可以尝试另一个。但它不起作用。有什么帮助吗?您需要在RE中转义您的引用。在第一行中,所有单引号都需要转义为\' 不要使用try块来修复有故障的RE。第一次就把它做好。Python中的try/except语句用于程序运行时发生的错误。另一方面,在编译过程中会遇到错误。在这种情况下,尝试/,除非对您没有帮助 看起来您最好总是使用“来包围包含不

我正在通过一个工具编写正则表达式,然后生成python代码。在某些情况下,我需要使用“或”或“或”来包装正则表达式。我想试试[排除错误]。如果捕获到错误,那么我可以尝试另一个。但它不起作用。有什么帮助吗?

您需要在RE中转义您的引用。在第一行中,所有单引号都需要转义为
\'


不要使用try块来修复有故障的RE。第一次就把它做好。

Python中的
try
/
except
语句用于程序运行时发生的错误。另一方面,在编译过程中会遇到错误。在这种情况下,
尝试
/
,除非
对您没有帮助


看起来您最好总是使用
来包围包含不同类型引号的正则表达式。在Python中,唯一不能放在三引号字符串中的是三引号。

对于一个实例:a=“”aaa“”,它也不起作用,有什么方法可以动态编译代码,并尝试捕获错误并尝试另一种方法?@mlzboy:如果您是从其他内容生成此代码,那么可能会转义所有嵌入的引号。所以
a=“aaa\”
将是
aaa
后接一个
。我用我的方式处理它,使用“”和字符串endswith时会导致错误,所以在字符串末尾我添加了一个空格,这样它就不会抛出syntx错误,然后,我进行一些转义,正如你上面所说的,谢谢。查找教程。完成所有教程。此问题表示您跳过了某些部分。
try:
    pattern=r'<tr><td><a href='(?P<link>[\s\S]*?)'[\s\S]*?><img src='(?P<img>[\s\S]*?)'     width='130' height='130'[\s\S]*?/></a></td>'
except:
    try:
        pattern=r"<tr><td><a href='(?P<link>[\s\S]*?)'[\s\S]*?><img src='(?P<img>[\s\S]*?)' width='130' height='130'[\s\S]*?/></a></td>"
    except:
        pattern=r"""<tr><td><a href='(?P<link>[\s\S]*?)'[\s\S]*?><img src='(?P<img>[\s\S]*?)' width='130' height='130'[\s\S]*?/></a></td>"""