2026年4月4日土曜日

EXCEL での正規表現置換

エクセルで、"No" の後の数字を一括で A1 セルで指定した内容に置換したくて
REGEXREPLACE(B10,"(No)[0-9]+","$1"&A1)
と書いたらエラーになった。なんで?
 "&" 以降を取ったら動くので、式自体は問題ないはず。

 … しばらく熟考して気がついた。
A1 セルに入ってたのは「2」。 そらエラーになるわorz

 数式を展開すると
REGEXREPLACE(B10,"(No)[0-9]+","$1"&"2")
REGEXREPLACE(B10,"(No)[0-9]+","$12")
⇒12番目の括弧はないからエラー

こうしなきゃいけなかったのね
REGEXREPLACE(B10,"(No)[0-9]+","${1}"&A1)

EXCEL での正規表現置換

エクセルで、"No" の後の数字を一括で A1 セルで指定した内容に置換したくて REGEXREPLACE(B10,"(No)[0-9]+","$1"&A1) と書いたらエラーになった。なんで?  "...