2015-07-03 110 views
0

我重構了所有使用accros應用程序的類中的一些代碼。Visual Studio替換正則表達式替換多行

我想使用內置在Visual Studio 2012查找和使用正則表達式替換...

只是不知道如何寫的正則表達式...所有在線的正則表達式測試工具,我可以做到這一點。然而,在VS2012,我無法得到它的工作...

實際的代碼是:

_processor.DbTracer.DatabaseTrace(ErrorCodes.DiagnosticSynonymExporterProcessor_SynonymUpdateAffected, 
          String.Format(Resources.DiagnosticSynonymExporterProcessor_SynonymUpdateAffected, updateBulk.Affected, server.ConnectionContext.DatabaseName), 
          CBO.Severity.Information, 
          _processor.DatabaseId); 

我想以下幾點:

_processor.Trace(ErrorCodes.DiagnosticSynonymExporterProcessor_SynonymUpdateAffected, 
          String.Format(Resources.DiagnosticSynonymExporterProcessor_SynonymUpdateAffected, updateBulk.Affected, server.ConnectionContext.DatabaseName), 
          CBO.Severity.Information); 

所以basicaly,它刪除最後一個參數並改變方法名..

回答

0

我可以建議以下的正則表達式替換:

_processor\.DbTracer\.DatabaseTrace(\([\s\S\r]*?CBO\.Severity\.Information),[^()]*\); 

並替換爲_processor.Trace$1);

enter image description here

只要確保你使用[\s\S\r]*?匹配包括換行符符號任意符號。