秀丸置換/マクロで、以下の置換を行いたいのですが、、、

いや、久々だ。
質問に答えよう、という気になったのも。
、、、秀丸マクロを書くのも。


一発置換は考えるのが面倒なので、マクロにて。

// 確認有無
#force = false;
// 追加文字
$add = "?uid=NULLGWDOCOMO";
// hrefの値開始文字
$hrefStart = "href=\"";
#hrefStartOffset = 6;
// hrefの値終了文字
$hrefEnd = "[^=]\"";
#hrefEndOffset = 1;
// 対象外文字
$except[0] = "#";
$except[1] = $add;
#exceptNum = 2;


while (true) {
	// hrefを探す
	searchdown $hrefStart , regular, nocasesense;
	// 見つからなかったら終了
	if (!result) endmacro;

	// x,yを保持
	#startx = x + #hrefStartOffset;
	#starty = y;

	// 終了文字を探す
	searchdown $hrefEnd , regular, nocasesense;
	// 見つからなかったら次へ
	if (!result) continue;

	// hrefの値を取得
	$val = gettext(#startx, #starty, x + #hrefEndOffset, y);

	// 除外文字列の有無チェック
	#found = false;
	#loop = 0;
	while (#loop < #exceptNum) {
		if (strstr($val, $except[#loop]) != -1) {
			#found = true;
			break;
		}
		#loop = #loop + 1;
	}
	// 除外文字列がなければ、値挿入
	if (!#found) {
		if (!#force) {
			question "行" + str(#starty + 1) + "列" + str(#startx) + "\n" + $val + $add + " にします。\nよろしいですか?";
		}
		if (result == yes || #force) {
			moveto x + #hrefEndOffset, y;
			insert $add;
		}
	}

}


これで、OKだと思うけど、ダメかな?
ダメならコメント頂ければ、また気が向いた時に回答しますよ〜。


追記
書き忘れました。
一々確認メッセージが出るのが、うるさい、という場合。
お分かりかもしれませんが、二行目の「#force = false;」を
「#force = true;」にすれば、確認メッセージは出ません。