「悪いニュース」から始めるために、照合するためのはるかに優れた指紋がない限り、「Exiting」行を挿入することはできません。現在のコードサンプルでは、一致させることができる最良のものはで}
あり、大げさな推測として、コード全体に中括弧がたくさんある可能性があります。
「開始」行を挿入することは可能ですが、堅牢性は入力によって異なります。
サンプルコードと同じ行(または同じ形式で関数名が異なる)を常に置換する場合は、[検索+置換]メニューで次の操作を実行できます。
探す:
public void startProcessing() {
交換:
public void startProcessing() {\n\tlogger.info("Entering into startProcessing");
検索モード:Extended
ハードコードされていない関数名で動的に置換する場合は、次のことを試してください。
探す:
(public void )([a-zA-Z0-9_$]+)(.*)
交換:
\1\2\3\n\tlogger.info\("Entering into \2"\);
検索モード:Regular Expression
ただし、この「動的」メソッドでは、検索するメソッドがすべて同じ形式で宣言されている必要がありますpublic void functionName...
。関数名の文字セットとして使用[a-zA-Z0-9_$]
しましたが、必要に応じて調整できます。
UPDATE(get / setメソッド
を無視する)またはなどのget / setメソッドを無視するには、次のgetFieldValueUnits()
値setFieldValueUnits(int val)
を使用できFind
ます(これReplace
は上記と同じです)。
(public void )(?!get|set)([a-zA-Z0-9_$]+)(.*)
get
これは、またはで始まらないset
(そして上記のようにとして宣言されている)すべての関数に一致しますpublic void
。