Macro/投稿/71

http://sakura.qp.land.to/?Macro%2F%C5%EA%B9%C6%2F71


Top > Macro > 投稿 > 71

PerlScirpt へのパディング処理を行う

  • ページ: Macro/投稿
  • 作者: miau?
  • カテゴリー: pls
  • 投稿日: 2005-11-07 (月) 00:50:16

メッセージ

  0
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
use strict;
use warnings;
 
use encoding 'cp932';
binmode(STDERR, ':raw :encoding(cp932)');
 
use Encode;
 
# パディングの設定
my $pad_char = ".";                            # 2 文字目以降の文字
my $pad_columns = 80;                        # 一行毎の文字数
 
# 改行コードの判別
my @retcodes = ("\r\n", "\r", "\n");
my $retcode = $retcodes[GetLineCode()];
 
# テキスト全体を取得
SelectAll();
my $seltext = GetSelectedString(0);
 
# バイト数取得
use bytes;
my $bytecount = length($seltext);
no bytes;
 
# 文字数の取得
my $seltext = decode('cp932', $seltext);
my $wordcount = length($seltext);
 
# 選択解除&ドキュメント末尾に移動
Right();
 
# 必要ぶん、適当な文字を挿入
my $count = $bytecount - $wordcount;    # 挿入が必要な文字数
my $instext = $retcode;                    # 挿入に使用するバッファ。とりあえず改行文字。
while ($count > 0) {
    $instext .= '#' . $pad_char x ($pad_columns - 1) . $retcode;
    $count -= $pad_columns;
}
$instext = encode('cp932', $instext);    # 挿入前に CP932 にエンコード
InsText($instext);
 
#...............................................................................
#...............................................................................


URL B I U SIZE Black Maroon Green Olive Navy Purple Teal Gray Silver Red Lime Yellow Blue Fuchsia Aqua White

リロード   新規 編集 凍結 差分 添付 複製 名前変更   ホーム 一覧 単語検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: 2006-07-30 (日) 00:44:40 (4516d)