青空文庫のテキストデータからルビを削除
freoアルファ版の小説管理サンプルとして、青空文庫の小説を使用する予定。青空文庫では、著作権切れの文学作品を読むことができます。
ただ、「できればルビなしのデータがほしいなぁ…。」と思ったのですが、配布されているのはルビありのデータのみのようです。
そんな訳で、テキスト形式で配布されているデータから、ルビを削除するプログラムをPerl(CGIではない)で書いてみた。
my $org_file = 'org.txt';
my $new_file = 'new.txt';
my $new = '';
if (open(FH, $org_file)) {
while ($data = <FH>) {
$data =~ s/《[^》]+》//g;
$data =~ s/|//g;
$data =~ s/(\r|\n)//g;
$new .= $data . "\n\n";
}
close(FH);
}
if (open(FH, '>' . $new_file)) {
print FH $new;
close(FH);
}
exit;
ルビを削除するついでに各行の最後に改行を1つ追加していますが、TinyMCEに貼り付けたとき、段落として認識してもらうためです。