Python:模式的意外结束
此正则表达式用于删除所有php注释。你能查一下正则表达式吗Python:模式的意外结束,python,Python,此正则表达式用于删除所有php注释。你能查一下正则表达式吗 content = "" with open(file_path, 'r') as content_file: content = content_file.read() re.sub(r"""(?|(?:#|//)([^\r\n]*)|/\*([\s\S]*?)\*/)""", "", content) 我的正则表达式怎么了?谢谢。部分肯定有问题。(?)(?:?)/) 问号充当第一个参数的量词( 那么您的正
content = ""
with open(file_path, 'r') as content_file:
content = content_file.read()
re.sub(r"""(?|(?:#|//)([^\r\n]*)|/\*([\s\S]*?)\*/)""", "", content)
我的正则表达式怎么了?谢谢。部分肯定有问题。
(?)(?:?)/)
问号充当第一个参数的量词
(
那么您的正则表达式模式就相当于
('(?'
'|'
'(?:#|//)([^\r\n]*)'
'|'
'/\*([\s\S]*?)\*/)'
)
如果您测试重新编译(“(?| a”)
,您将获得与您相关的错误相同的错误:模式的意外结束
顺便说一下,
[\s\s]
表示任何字符,\n
组成;您可以将其替换为带有标记的点
re.DOTALL您的输入和输出是什么?您希望它做什么?通过提供您试图匹配的文本来帮助我们。并删除或三重引号r”(|(?:#|/)([^\r\n]*)|/\*([\s\s]*?)\*/)“
。试试这个。@JonClements,这个正则表达式是用来删除所有php注释的。我遇到了意外的模式结束错误。“(?|”我刚刚删除了这个部分,它成功了。谢谢你的指导。