[あすかぜ・ねっと]あすかぜ・ねっと自作ソフトCassava > サポート掲示板

Cassava Editor サポート掲示板

スレッド一覧に戻る返信

[899] 別の行のセル内容を条件にした正規表現の置換について

こや [2025/04/03 10:22:06]

いつも愛用させていただいております。
質問させてください。

題名の通りなのですが、ジェネレーターで作成したマクロが動作せず、悩んでおります。
下記の表記は正規表現の置換には対応していないのでしょうか?

x = 8;
for (y = 2; y <= Bottom; y++) {
  if (pos([1,y], "●●●") > 0) {
    [x,y] = [x,y].replaceAll("×××", "△△△");
  }
}

お手数ではございますがご教示のほどよろしくお願いいたします。

Re: [899] 別の行のセル内容を条件にした正規表現の置換について

あすかぜ [2025/04/03 22:39:31]

はい、ジェネレーターは今のところ正規表現には対応していません。すみません。
.replaceAll() で正規表現を使う場合、"" ではなく //g という書き方を使ってください。

x = 8;
for (y = 2; y <= Bottom; y++) {
  if (pos([1,y], "●●●") > 0) {
    [x,y] = [x,y].replaceAll(/×××/g, "△△△");
  }
}

よろしくお願いします。

Re: [899] 別の行のセル内容を条件にした正規表現の置換について

あすかぜ [2025/04/06 14:45:46]

ジェネレーターで正規表現の置換も生成できるようにしてみました。
https://www.asukaze.net/soft/cassava/macro/generator/#y=2&x=e&xv=8&cc1=cl&cv1=%E2%97%8F%E2%97%8F%E2%97%8F&co1=c&pp1=r&prf1=%C3%97%C3%97%C3%97&prt1=%E2%96%B3%E2%96%B3%E2%96%B3&prr1=1&name=%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE%E3%81%AE%E7%BD%AE%E6%8F%9B

Re: [899] 別の行のセル内容を条件にした正規表現の置換について

こや [2025/04/09 16:44:00]

お礼が遅くなり申し訳ございません。
まさに求めていた結果となり大変助かりました。
ジェネレーターの方まで更新してくださりありがたいです。
これからも愛用させていただきます。

スレッド一覧に戻る返信