978 から始まるバーコードは ISBN なのですが、ヘッダ情報がくっついていて邪魔です。ということで、ヘッダ情報を除くコードを Perl で書いてみました。これでバーコードから ISBN を算出できる! まぁ。全然すごいことではないけどね。単に ISBN のチェックサムを算出してくっつけるだけ。 if ($code =~ /^978(\d)(\d)(\d)(\d)(\d)(\d)(\d)(\d)(\d)/) { my $c = ($1 + $2 * 2 + $3 * 3 + $4 * 4 + $5 * 5 + $6 * 6 + $7 * 7 + $8 * 8 + $9 * 9) % 11; if ($c == 10) { $c = "X"; } $code = $1 . $2 . $3 . $4 . $5 . $6 . $7 . $8 . $9 . $c; } $code には、対象とな