1
我試圖在Windows上爲LESS預處理器實現用Sublime Text 2構建系統的錯誤捕獲。我需要一個包含路徑和錯誤行號的文件名分組的正則表達式。用於崇高文本分組的正則表達式(rexep)2構建系統
預處理器輸出如下:
ERR:
type: Parse
message: Syntax Error on line 6
index: 131
filename: D:\workflow\less-css\test\test.less
line: 6
extract: asd,},
[Finished]
這裏是file_regex選項的正則表達式規則:
的file_regex選項使用Perl樣式的正則表達式來捕獲多達四個字段來自構建程序輸出的錯誤信息,即:文件名,行號,列號和錯誤消息。使用模式中的組來捕獲這些信息。文件名字段和行號字段是必需的。
我只是最近纔開始學習正則表達式,所以任何幫助,非常感激。同樣,regexp應該返回2個組項 - 文件名與路徑和行號。兩者都存在於預處理器輸出中。
感謝, 斯特凡
它發生,我認爲'index'可能是列數。希望你可以擴展正則表達式來包含這個字段,如果需要的話?除了標籤文本外,每個字段的模式都是相同的。 – Borodin 2012-01-11 02:47:35
不幸的是,訂單很重要。我想我現在不得不放棄錯誤信息。文件路徑和行號就足夠了。另外,你能否告訴我如何正確地逃避這個表情?它被分配給配置變量,所以python的原始輸出是不可能的。 – stefanlous 2012-01-11 11:04:03
如果你的正則表達式的實現允許前瞻斷言,那麼這個'/(?=.*filename:\s+(.+?)\s*\n)(?=.*line:\s+(.+?)(#)(#)(#)(#)(#) \ s * \ n)(?=。*消息:\ s +(。+?)\ s * \ n)/ s'將以正確的順序返回字段。加倍所有反斜槓就足以逃避表達。 – Borodin 2012-01-11 14:52:01