Landscape トップページ | < 前の日 2002-10-16 2002-10-22 次の日 2002-10-23 >

Landscape - エンジニアのメモ 2002-10-22

Perl で HTML エスケープ


* Perl で HTML エスケープ

この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [Perl] [HTML]

perl で HTML エスケープする方法。大崎さんのperlメモから。

Namazu でインデキシングする HTML の場合、< > & ” “ もエスケープすること。
Namazu が奇妙な変換をするため。http://www.namazu.org/ml/namazu-users-ja/msg02528.html 参照。
# HTML エスケープする
sub HtmlEscape {
  my $content = $_[0];
  my $eucpre = qr{(?<!\x8F)};
  my $eucpost = qr{
      (?=
      (?:[\xA1-\xFE][\xA1-\xFE])* # JIS X 0208 が 0文字以上続いて
      (?:[\x00-\x7F\x8E\x8F]|\z)  # ASCII, SS2, SS3 または終端
      )
  }x;
  my @escape_from = qw(& > < " ');
  my @escape_to = ('&amp;', '&gt;', '&lt;', '&quot;', '&#39;');
  for (my $i = 0; $i <= $#escape_from; $i++) {
    $content =~ s/$eucpre\Q$escape_from[$i]\E$eucpost/$escape_to[$i]/g;
  }
  return $content;
}


すべての記事の見出し (全1029件)
全カテゴリの一覧と記事の数
カテゴリごとに記事をまとめ読みできます。記事の表題だけを見たい場合は、すべての記事の見出し (カテゴリ別表示) へ。

直近30日分の記事
2007-04-23 (Mon)
2007-03-07 (Wed)
2007-02-27 (Tue)
2007-01-17 (Wed)
2007-01-15 (Mon)
2007-01-14 (Sun)
2007-01-08 (Mon)
2006-12-01 (Fri)
2006-11-22 (Wed)
2006-11-20 (Mon)
2006-11-19 (Sun)
2006-09-30 (Sat)
2006-08-29 (Tue)
2006-08-04 (Fri)
2006-07-27 (Thu)
2006-07-23 (Sun)
2006-07-17 (Mon)
2006-07-10 (Mon)
2006-07-06 (Thu)
2006-07-03 (Mon)
2006-06-29 (Thu)
2006-06-28 (Wed)
2006-06-27 (Tue)
2006-06-25 (Sun)
2006-06-19 (Mon)
2006-06-18 (Sun)
2006-06-15 (Thu)
2006-06-11 (Sun)
2006-06-01 (Thu)
2006-05-30 (Tue)
プロファイル
斎藤 宏明。エンジニアです。宇都宮市に住んでいます。
リンク
RSS
スポンサードリンク
Powered by
さくらインターネット

© 斎藤 宏明 Saito Hiroaki Gmail Address
Landscape - エンジニアのメモ http://sonic64.com/
Landscape はランドスケープと読みます。
ひらがなだと らんどすけーぷ です。