unicode(utf-8)におけるsplitの挙動についNo.09931
海法 さん 22/08/16 01:58
 
// aaa:bbb:ccc
selectall;
copy;
beginclipboardread;
$a[0] = getclipboard();
#a=split($b,$a[0],":");
insert str(#a);

初めまして。

上記は、表示されてる一行目の文字列を読み込んで、「:」で分割するマクロです。
このマクロ自身に敵用した場合、shift-jis環境では、分割数が3と正常に出ますが、
utf-8、BOM環境だと、1と出て分割がうまくいきません。
何か見逃していることがありますでしょうか。

[ ]
RE:09931 unicode(utf-8)におけるsplitのNo.09933
秀丸担当 さん 22/08/17 13:19
 
確かにUTF-8のときおかしかったです。
次のバージョンで修正させていただきます。

とはいえ次のバージョンはV9.18になるのですが、JavaScriptで書けるようになって、
JavaScriptに書き直すと現状のV9.18β版でも回避可能でした。
例:
// aaa:bbb:ccc
js{
  selectall();
  copy();
  beginclipboardread();
  var a=[];
  a[0] = getclipboard();
  var c=a[0].split(":");
  insert(c.length);
}
endmacro;

[ ]
RE:09933 unicode(utf-8)におけるsplitのNo.09937
海法 さん 22/08/17 20:53
 
ありがとうございます。
java scriptも試してみます。助かります!

[ ]