2013-02-01 46 views
1

我需要在框架中進行重要的重構。我有一個方法從代碼中的不同位置調用大約300次(即查找用法給我大約300個結果)。Intellij過濾查找用法/調用層次結構

我想過濾這些結果,以便它只返回不在構造函數體中的用法。

我試圖使用「視圖調用層次結構」,它提供了更多可讀結果(即更容易從外部構造函數中識別調用)。但我想知道是否有一種方法來自動排除在構造函數體內完成的調用?

我不習慣使用「結構搜索」,但它也許可以幫助嗎?

我使用IDEA EAP 12

+0

應該可以使用[SSR](http://www.jetbrains.com/idea/documentation/ssr.html)。 – CrazyCoder

回答

2

(回答我的問題)

我試圖探索SSR的特徵,終於找到了一個有用的模式。

我想要什麼:找到完成的方法myMethod的所有調用,但不包括那些在構造函數體內完成的調用(即只包含那些在常規實例方法中完成的調用)。

的搜索模式:

class $Class$ { 
    $ReturnType$ $MethodName$($ParameterType$ $Parameter$) {$MethodCode$;} 
} 

此模式將匹配所有非空方法。所以,我還是要限制$MethodCode$用正則表達式:

.*\.myMethod\(.* 

我想應該是可以提高$ MethodCode $正則表達式,但我沒有得到任何錯誤匹配,所以,我很高興與。