質問: ### 前提・実現したいこと javaで書かれたソースコードの修正を行っているのですが、あるメソッドの引数の型がString⇒Integer型に変わったため、以下のような置換を行う必要があります。 ■置換前 classA.setB("12") ■置換後 classA.setB(12) Eclipseの置換機能を用いて置換を行いたいのですが、上記のような置換を一発で行うことは可能でしょうか? ### 試したこと 以下のような置換を試みてみたのですが、置換後は「setB(d+)」という形になり(d+が単なる文字列として扱われてしまい?)、うまく出来ませんでした。数値の部分はそのまま置換を行いたいです。 ■置換前 setB\("\d+"\) ■置換後 setB\(\d+\) ### 補足情報(言語/FW/ツール等のバージョンなど) Eclipseはバージョン4.4を使用しています。
回答: 検索文字列:setB\("(\d+)"\) 置換文字列:setB($1) 正規表現のグルーピングという機能が使えます。\でエスケープしていないカッコで囲まれた部分は、置換時に$1などの変数で参照可能です。$の後ろの数字は、何回目に出現したカッコに囲まれた部分か、にあたります。この場合、1個めのカッコは\d+部分にあたるため、$1で数字部分だけを持ってくることができます。