検索結果キーワードをハイライトする Perl モジュール HTML::ColorKeywords
2006-02-11-4: [Perl]
http://nais.to/~yto/clog/2006-02-11-1.html
ハイライトされる色は Yahoo! の Web 検索結果のキーワードの色.
試してみたら,キーワードの大文字小文字を区別するようなので,区別しないようにした.
以下,diff.
--- ColorKeywords.pm-orig 2006-02-10 14:27:34.000000000 +0100
+++ ColorKeywords.pm 2006-02-12 00:19:21.571562000 +0100
@@ -30,7 +30,7 @@
foreach (@frag) {
next if (/^<.*?>$/);
s!($self->{keypat})!"<span style=\"background-color:".
- $self->{colors}->[$self->{key2no}{$1} % @{$self->{colors}}].
+ $self->{colors}->[$self->{key2no}{lc($1)} % @{$self->{colors}}].
"\">$1</span>"!gie;
}
$$sp = join("", @frag);
@@ -38,6 +38,7 @@
sub _set_regex {
my ($self, $keys) = @_;
+ @$keys = map {lc($_)} @$keys;
$self->{keypat} = join("|", map {"\Q".$_."\E"} @$keys);
%{$self->{key2no}} = map {$keys->[$_]=>$_} (0..$#{$keys});
}
関連記事:
[2006-02-11-5] HTML::ColorKeywords を使って chalow の検索をハイライトする