我试图捕获在Sublime Text 3中编码时遇到的错误。错误如下所示:
KeyError: 'web'
我的正则表达式捕获代码是
filename.extension:lineNumber: error: "The error message"
Code that = is.wrong();
^ <--Arrow pointing to the error
根据this文档应该是正确的,除了没有要捕获的列号。
每当我尝试使用此正则表达式运行错误的代码时,它会向sublime输出错误
"result_file_regex": "^(...*?):([0-9]*): error: (.*)"
我做错了什么?
答案 0 :(得分:1)
<强> result_file_regex 强> 一种Perl样式的正则表达式,用于从结果视图中捕获最多四个错误信息字段,即:文件名,行号,列号和错误消息。使用模式中的组来捕获此信息。文件名字段和行号字段是必需的。
它说&#34; result_file_regex&#34;在文档中,但这是错误的,构建的关键&#34; file_regex&#34;。
我们如何匹配:
filename.extension:lineNumber: error: "The error message"
让我们从最简单的匹配,文件名和行号开始:
"file_regex": "^([^:]+):([0-9]+):.*$"
以上匹配文件名和行号(两个匹配)。
"file_regex": "^([^:]+):([0-9]+):([0-9]+)?.*$"
以上内容与文件名,行号和可选列号相匹配。
"file_regex": "^([^:]+):([0-9]+):([0-9]+)? error: (.+)$"
以上匹配所有四个元素:文件名,行号,列号(可选)和错误消息。