最初我們計劃對類變量使用m_前綴的舊約定。但現在需要將所有m_VaribaleName替換爲this.variableName,即刪除m_並在m_小寫後創建第一個字符。從變量名稱中刪除m_前綴
我可以用這個搜索並替換m_。但是這不會將變量的第一個字符重命名爲小寫。在搜索並替換之後,如果我使用重新分解工具將VariableName重命名爲variableName,則還會使用VariableName重命名已存在的屬性。
我想知道是否有任何正則表達式,工具,宏使此任務自動化。
最初我們計劃對類變量使用m_前綴的舊約定。但現在需要將所有m_VaribaleName替換爲this.variableName,即刪除m_並在m_小寫後創建第一個字符。從變量名稱中刪除m_前綴
我可以用這個搜索並替換m_。但是這不會將變量的第一個字符重命名爲小寫。在搜索並替換之後,如果我使用重新分解工具將VariableName重命名爲variableName,則還會使用VariableName重命名已存在的屬性。
我想知道是否有任何正則表達式,工具,宏使此任務自動化。
Resharper將突出顯示解決方案中的所有這些錯誤,並單獨修復它們,但我不認爲它可以使用單個命令修復所有這些錯誤。不過,它很容易在它找到的錯誤之間導航。
你可以在emacs中做到這一點。
打開文件(C-x C-f
)並執行M-x replace-regexp
。 假設變量的名稱是Variable
。
您的正則表達式查詢將取代\(V\)ariable
的\,(downcase \1)ariable
。
\,
告訴emacs以下語句是一個lisp表達式。
此外,如果你想在同一時間替換m_,你可以替換m_\(V\)ariable
爲\,(downcase \1)ariable
。
This will同時照顧文件中的所有實例,並且emacs記住您的最後一個replace-regexp查詢,因此您不必爲多個文件重新輸入它。此外,還有一種方法是使用DIRED模式同時對多個文件執行replace-regexp。
打開上DIRED模式(C-x C-f DIR_NAME
)的目錄,由(你可以導航使用n
和p
)會在他們按m
標記你想要的文件。一旦您要處理的文件被標記爲Q
(首字母大寫)。您將得到與執行單個文件相同的regexp提示,請輸入正則表達式RET
替換和RET
。它會一次打開每個文件,按!
爲每個文件替換該文件中的所有reg-exps。
之後,您仍然需要保存文件。你可以用C-s
然後!
來完成。
Resharper將m_VariableName更改爲_mVariableName – Mohit 2011-06-15 10:33:43