2009年11月11日

[Perl][Win32]Perlでクリップボード処理

WindowsのActivePerlでの話だが、クリップボードのテキストに対しても簡単に処理するできる。

例えばHTMLの特殊文字を含む文章(ソーステキスト)をブログにアップする場合などは
use strict;
use Win32::Clipboard;

my $clip = Win32::Clipboard();
my $text = $clip->GetText()

$text =~ s/\&/&/g;
$text =~ s/\</&lt;/g;
$text =~ s/\>/&gt;/g;
$text =~ s/\"/&quot;/g;

$clip->Empty();
$clip->Set( $text );
というスクリプトを作っておいて、変換する文字を含んだテキストをコピーし、このスクリプトを実行(アイコンのダブルクリック)して、ペーストすればよい。

なおGetText()は改行コードも含んだ1行としてテキストを取得するので、1行ごとのテキストデータとしたいときは
my $text = $clip->GetText();
my @textdata = split /\r\n|\r|\n/, $text;
とすればよい。
ラベル:clipboard win32 Perl
posted by goblin at 01:25| Comment(0) | TrackBack(0) | Perl | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。