English help on website



検索/置換文字列の上限について(Ver9.24対応版)
目次検索系文− 検索/置換文字列の上限について
検索/置換文字列には上限があります。
上限を超える可能性がある場合は事前に文字数をカウントして判断する必要があります。

検索/置換文字列の上限はUnicode(UCS-2単位)で4094文字までです。
この値はgetmaxinfoで取得することができます。

$a = gettext(seltopx,seltopy,selendx,selendy);
if( wcslen($a) > (getmaxinfo(6)-1)/*4094*/ ) {
message "検索文字列の上限を超えました"; endmacro; } gofiletop; searchdown $a;

過去のバージョン:
V9.14までは、strlenで4095文字までと表記していましたが、正確ではありませんでした。正確にはwcslenで4094文字までになります。
V7.xxまでは、検索文字列の上限は 249 文字(タイプミスではなく置換より10文字少ない249です)まで、置換文字列の上限は 259 文字まででした。
過去のバージョンでは、安全なマクロを作るうえでは、249文字までを推奨していました。