与えられたテキスト
public void MyFunction(int i, String str, boolean doIt) {
Log.i(TAG, "Enter MyFunction(int i, String str, boolean doIt)");
2行目でいくつかの交換をしたいのですが、最初の行ではありません
public void MyFunction(int i, String str, boolean doIt) {
Log.i(TAG, "Enter MyFunction( i:" + i + ", str:" + str ", doIt:" + doIt + ")");
これまでのところ、次の正規表現を使用して、これらの結果を得ることができます。
「 」を検索「\w+\s+(\w+)([,\)])
」
に置き換える$1:" + $1 + "$2
public void MyFunction(i:" + i + ", str:" + str ", doIt:" + doIt + ") ") {
Log.i(TAG, "Enter MyFunction( i:" + i + ", str:" + str ", doIt:" + doIt + ") ");
Log.i行でのみ置換を強制的に実行する方法はありますか?
編集:
次の正規表現 " Log\.i\(.*?\((\s*(\w+\s+(\w+)([,\)]))+
"を試しました
が、$ 1、$ 2、$ 3には最後の一致のみが含まれています(最後の引数:doIt)
$ 1 = boolean doIt)
$ 2 = doIt
$ 3 =)
引数ごとに1つずつ、$ 1、$ 2、$3の3つのセットが必要な場合。複数の一致を取得する方法を知っている場合は、それも解決策になります