SSブログ

デスクトップ環境をperl便利にする!その1:クリップボードをユニークソート [perl]

perlでクリップボードのデータをユニークソートし、結果をクリップボードに設定する。
#windows端末で、perl環境が整っていることが前提ですので、ご注意を!
ソースは以下。
#!/usr/bin/perl
#----------------------------------------
# [Windows用]
# クリップボードのデータをユニークソートし、
# 結果をクリップボードに設定する。
use utf8;
use Encode;
use Win32::Clipboard;
my $clip = Win32::Clipboard();
exit 1 unless $clip->IsText(); # テキスト以外なら終了する
my $text = decode("cp932",$clip->GetText()); # テキスト取得
# 連想配列を使ってユニーク
my %hash=();
foreach $rec (split(/\n/,$text)){
    $rec=~s/\r//g;       # LFを削除
    next if($rec eq ""); # スペースは除外
    $hash{$rec}="";
}
$text="";
foreach $key (sort keys(%hash)){
    $text.=$key."\r\n";
}
$clip->Set(encode("cp932",$text)); # テキスト設定
exit;
#----------------------------------------

上のコピペして、適当なところにclipboard_sort_uniq.plという名前で保存する。
保存したファイルのショートカットをデスクトップに作成し、名前を「clipboardをuniq-sortする。」
に変える。使い方は以下。
[1]ユニークソートしたいデータ群をマウスで選択し、Ctrl+cでコピー。
[2]「clipboardをuniq-sortする。」ショートカットをダブルクリック。
[3]Ctrl+vで貼り付け。
nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。