<?xml version="1.0" encoding="EUC-JP"?>
<rss version="2.0">
<channel>
<title>Produce by Sieg</title>
<link>http://sieg.xeong.com/</link>
<description>Webプログラムについてのメモ</description>
<language>ja</language>
<copyright>Copyright 2006</copyright>
<lastBuildDate>Thu, 06 Apr 2006 06:42:13 +0900</lastBuildDate>
<generator>http://www.movabletype.org/?v=3.2-ja-2</generator>
<docs>http://blogs.law.harvard.edu/tech/rss</docs> 

<item>
<title>BLOGinSPACE</title>
<description><![CDATA[宇宙に発信するというちょっと変わったサイトに去年から登録していたんだけど<br />
こんなのが送られてきた！　かっこいいので掲載します<br />
ちなみに、当サイト(sieg.xeong.com)内の記事はすべて宇宙に向かって定期的に発信されている・・ようです<br />
詳細はリンク先を<br />
<center>
<!--BLOGinSPACE Certicate Begin-->
<a href="http://www.bloginspace.com" target="_blank"><img src="http://www.bloginspace.com//certificate/certificate-20060405.jpg?humanoid=c2llZ0B4ZW9uZy5jb20%3D" style="border: 0;" /></a>
<!--BLOGinSPACE Certificate End-->
</center>
<img src="http://sieg.xeong.com/images/file4.gif"> <a href="http://www.bloginspace.com/" target="_blank">http://www.bloginspace.com/</a><br />]]></description>
<link>http://sieg.xeong.com/archives/2006/04/bloginspace.html</link>
<guid>http://sieg.xeong.com/archives/2006/04/bloginspace.html</guid>
<category>ひとりごと</category>
<pubDate>Thu, 06 Apr 2006 06:42:13 +0900</pubDate>
</item>
<item>
<title>インストール型ブログ</title>
<description><![CDATA[なるべくたくさんのサーバインストール型ブログを集めてみました<br />
<br />
使用言語は、Perl、PHP、Pythonがあり<br />
データベースは、MySQL、PostgreSQL、そしていらないものまでありました<br />
いらないものはたぶん、テキスト保存かPerl用のデータベースを使っていると見られます<br />
利用ライセンス形態もさまざまで、GPL(Gnu Open Sorce)、BSD License、<br />
商用は有料だが非商用は無料、そして制限なしというところまであります<br />
また、どこをどう探してもそれらの記述のないサイトもありましたので「制限なし(?)」で示しました<br />
<br />
探せばたぶんまだまだあると思うので、まずはパート１ということで<br />
以下１８種類を並べてあります<br />]]></description>
<link>http://sieg.xeong.com/archives/2005/07/post_5.html</link>
<guid>http://sieg.xeong.com/archives/2005/07/post_5.html</guid>
<category>ブログ</category>
<pubDate>Fri, 22 Jul 2005 18:56:44 +0900</pubDate>
</item>
<item>
<title>セキュリティコード</title>
<description><![CDATA[登録認証時のセキュリティコード<br /><br />

登録するときに、画像の文字を入力してくださいっていうのがあります<br />
あれは、自動登録などを防ぐためにあるそうです<br />
「submission code」（サブミッション・コード）とも言うそうです<br />
いまひとつ仕組みがわからないので、自分で考えてみることにしました<br />
<br />
約束事として、<br />
HTMLファイルのソースを直接見られても、セキュリティコードがわかってはならない<br />
暗号化するにしても、方法がわかってはならない<br />
<br /><br />

<b>[1] まず最初に、かなり回りくどい方法から</b><br />
これは、HTML,JavaScript,Flash,CGIをつかいます<br />
フローとしては<br />
<ol>
<li>HTMLファイルを表示</li>
<li>その際JavaScriptで乱数を生成</li>
<li>生成された乱数をFlashへの引数と次画面(登録CGI)へのhiddenパラメータとして渡す</li>
<li>Flashの方は、受け取った乱数を書き込み用のCGIへ渡し、戻り値として文字列を受け取り表示する</li>
<li>書き込み用のCGIでは受け取った乱数と更に表示用に生成した６桁の乱数文字列、現在の日付をファイルに書き出し、ここで表示用に生成した６桁の文字列を返す</li>
<li>ユーザはFlashで書き出された文字列を読み入力フィールドに書き送信</li>
<li>登録CGIでは、受け取った乱数とセキュリティコード、日付の差をファイルと比較、その他の入力項目も確認して真偽を決定</li>
<li>真なら更に現在の時間フィールドを追加してファイルに保存 (日付超過データを削除)</li>
<li>真ならユーザに登録内容を確認させて、アクティベーション用のURLを書いてメール送信</li>
<li>アクティベーションURL用のCGIで正規のコードを受け取った時点で先ほどのデータを削除して、ユーザ登録をする</li>
</ol>
この方法の利点は<br />
　・HTMLでの表示<br />
　・このHTMLで見られる乱数は、表示されるセキュリティーコードとはまったく無関係である<br />
<br />
欠点として<br />
　・JavaScriptとFlashが必須<br />
　・作る側は、かなりめんどうなことになる<br />
<br />
<br />
<b>[2] 上記のものを改良</b><br />
これは、Flashを使わずGIFアニメーションを生成する(gifcat.pl使用)<br />
フローはほぼ同じ<br />
Flashの部分をなくして、&lt;img&gt;タグでCGIに乱数を渡す<br />
<br />
この方法の利点は<br />
　・Flashがいらなくなる<br />
<br />
欠点として<br />
　・ばらばらのGIF画像を大量に作っておく必要がある<br />
　・出かたが変 (gifcat.plの特徴)<br />
<br />
考察の余地<br />
Image::Mgickをつかって一つのGIF画像を作成するという手法がある<br />
<br />
<br />
<b>[3] 更に改良</b><br />
HTML表示ではなくCGIによる表示 (普通はこっちかも)<br />
これもJavaScript部分をCGIで書き出すだけで、Flashなら[1]とほぼ同じ、GIF画像なら[2]とほぼ同じ<br />
<br />
この方法の利点は<br />
JavaScriptがいらなくなる<br />
<br />]]></description>
<link>http://sieg.xeong.com/archives/2005/07/post_4.html</link>
<guid>http://sieg.xeong.com/archives/2005/07/post_4.html</guid>
<category>Perl &amp; CGI</category>
<pubDate>Sun, 17 Jul 2005 01:19:16 +0900</pubDate>
</item>
<item>
<title>GoogleSitemapsジェネレータ</title>
<description><![CDATA[<p>前回のサイト探索からの続きで<br />
Google　Sitemaps用のXMLファイルを出力するスクリプトを作ってみた(コマンド編)<br />
強調されている行番号は前回(<a href="http://sieg.xeong.com/archives/2005/07/post_2.html" title="サイト探索">サイト探索</a>)からの変更点 </p>
<blockquote class="code">
<p><img src="/images/icon1.gif" width="14" height="10" border="0" /> Code: <a href="/download/delivery.cgi?file=xmlgen.pl">download</a> <script src="/download/dl_count.cgi?file=xmlgen.pl"></script></p>
<ol style="margin-top:0px;">
<li><span class="row">use LWP::Simple qw(get head);</span></li>
<li><span class="row">use HTML::LinkExtor;</span></li>
<li><span class="row">use strict;</span></li>
<li><span class="row">&nbsp;</span></li>
<li><span class="row">my(%seen,%mod_time,%out,$site,$top_url,$freq,$priority);</span></li>
<li class="renew"><span class="row">$freq = '<span class="val">weekly</span>';</span></li>
<li class="renew"><span class="row">$priority = '<span class="val">1.0</span>';</span></li>
<li><span class="row">$top_url = '<span class="val">http://sieg.xeong.com/</span>';</span></li>
<li><span class="row"></span></li>
<li><span class="row">$top_url = "http://$top_url" unless $top_url =~ /^https?\b/;</span></li>
<li><span class="row">($site = $top_url) =~ s/^(http:\/\/.+\/).*$/$1/;</span></li>
<li><span class="row">$site .= "/" unless ($site =~ /\/$/);</span></li>
<li><span class="row">&nbsp;</span></li>
<li class="renew"><span class="row">&print_xml_head;</span></li>
<li><span class="row">linker($top_url);</span></li>
<li class="renew"><span class="row">&print_xml_foot;</span></li>
<li><span class="row">&nbsp;</span></li>
<li><span class="row">sub linker {</span></li>
<li><span class="row">&nbsp;my $base_url = shift;</span></li>
<li><span class="row">&nbsp;my $parser = HTML::LinkExtor-&gt;new(undef, $base_url);</span></li>
<li><span class="row">&nbsp;$parser-&gt;parse(get($base_url))-&gt;eof;</span></li>
<li><span class="row">&nbsp;my @links = $parser-&gt;links;</span></li>
<li><span class="row">&nbsp;for my $linkarray (@links) {</span></li>
<li><span class="row">&nbsp;&nbsp;my @element = @$linkarray;</span></li>
<li><span class="row">&nbsp;&nbsp;my $elt_type = shift @element;</span></li>
<li><span class="row">&nbsp;&nbsp;while(@element) {</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;my ($attr_name, $attr_value) = splice(@element, 0,2);</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;if(  $attr_name eq "href" && $attr_value-&gt;scheme =~ /\b(https?)\b/ && $attr_value =~ /^$site/</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;&nbsp;&& ($attr_value =~ /\.xml?$/i or $attr_value =~ /\.s?html?$/i or $attr_value =~ /\.php.*$/i or $attr_value =~ /\.cgi.*$/i)</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;){</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;&nbsp;$attr_value =~ s/^(.+)#.*$/$1/;</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;&nbsp;next if(defined $seen{$attr_value});</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;&nbsp;my @heads = LWP::Simple::head($attr_value);</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;&nbsp;if(@heads) {</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$seen{$attr_value}++;</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;my @date = $heads[2] ? gmtime($heads[2]) : gmtime(time);</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$mod_time{$attr_value} = sprintf("%04d-%02d-%02dT%02d:%02d:%02dZ", $date[5]+1900, $date[4]+1, @date[3,2,1,0]);</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;&nbsp;}</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;}</span></li>
<li><span class="row">&nbsp;&nbsp;}</span></li>
<li><span class="row">&nbsp;}</span></li>
<li><span class="row">&nbsp;</span></li>
<li><span class="row">&nbsp;for (sort keys %seen) {</span></li>
<li><span class="row">&nbsp;&nbsp;my $mod = $mod_time{$_};</span></li>
<li><span class="row">&nbsp;&nbsp;s/^(.+\.cgi).*$/$1/i;</span></li>
<li><span class="row">&nbsp;&nbsp;s/^(.+\.php).*$/$1/i;</span></li>
<li><span class="row">&nbsp;&nbsp;if(defined $out{$_}) {</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;next;</span></li>
<li><span class="row">&nbsp;&nbsp;} else {</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;$out{$_} = 'true';</span></li>
<li class="renew"><span class="row">&nbsp;&nbsp;&nbsp;print_xml($_,$mod);</span></li>
<li><span class="row">&nbsp;&nbsp;&nbsp;linker($_);</span></li>
<li><span class="row">&nbsp;&nbsp;}</span></li>
<li><span class="row">&nbsp;}</span></li>
<li><span class="row">}</span></li>
<li><span class="row">&nbsp;</span></li>
<li class="renew"><span class="row">sub print_xml_head {</span></li>
<li class="renew"><span class="row">&nbsp;my %in_url = @_;</span></li>
<li class="renew"><span class="row">&nbsp;my @date = gmtime(time);</span></li>
<li class="renew"><span class="row">&nbsp;my $mod_time = sprintf("%04d-%02d-%02dT%02d:%02d:%02dZ", $date[5]+1900, $date[4]+1, @date[3,2,1,0]);</span></li>
<li class="renew"><span class="row">&nbsp;print &lt;&lt;XML;</span></li>
<li class="renew"><span class="row">&lt;?xml version="1.0" encoding="UTF-8"?&gt;</span></li>
<li class="renew"><span class="row">&lt;urlset xmlns="http://www.google.com/schemas/sitemap/0.84"</span></li>
<li class="renew"><span class="row">xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"</span></li>
<li class="renew"><span class="row">xsi:schemaLocation="http://www.google.com/schemas/sitemap/0.84</span></li>
<li class="renew"><span class="row">http://www.google.com/schemas/sitemap/0.84/sitemap.xsd"&gt;\n</span></li>
<li class="renew"><span class="row">&lt;url&gt;</span></li>
<li class="renew"><span class="row">&lt;loc&gt;$top_url&lt;/loc&gt;</span></li>
<li class="renew"><span class="row">&lt;lastmod&gt;$mod_time&lt;/lastmod&gt;</span></li>
<li class="renew"><span class="row">&lt;changefreq&gt;$freq&lt;/changefreq&gt;</span></li>
<li class="renew"><span class="row">&lt;priority&gt;$priority&lt;/priority&gt;</span></li>
<li class="renew"><span class="row">&lt;/url&gt;\n</span></li>
<li class="renew"><span class="row">XML</span></li>
<li class="renew"><span class="row">}</span></li>
<li><span class="row">&nbsp;</span></li>
<li class="renew"><span class="row">sub print_xml {</span></li>
<li class="renew"><span class="row">&nbsp;print qq(&lt;url&gt;\n&lt;loc&gt;$_[0]&lt;/loc&gt;\n&lt;lastmod&gt;$_[1]&lt;/lastmod&gt;\n&lt;/url&gt;\n);</span></li>
<li class="renew"><span class="row">}</span></li>
<li><span class="row">&nbsp;</span></li>
<li class="renew"><span class="row">sub print_xml_foot {</span></li>
<li class="renew"><span class="row">&nbsp;print qq(\n&lt;/urlset&gt;\n);</span></li>
<li class="renew"><span class="row">}</span></li>
</ol>
</blockquote>]]></description>
<link>http://sieg.xeong.com/archives/2005/07/2_googlesitemap.html</link>
<guid>http://sieg.xeong.com/archives/2005/07/2_googlesitemap.html</guid>
<category>Perl &amp; CGI</category>
<pubDate>Sun, 10 Jul 2005 17:01:21 +0900</pubDate>
</item>
<item>
<title>サイト探索</title>
<description><![CDATA[<p>Google　Sitemaps ジェネレーターを作るにあたり、ネットワークから<br />
サイト内のリンクをたどり、同一サイト内のURLを抽出するスクリプトを作ってみた</p>

<blockquote class="code">
<p><img src="/images/icon1.gif" width="14" height="10" border="0" /> Code: <a href="/download/delivery.cgi?file=linkgen.pl">download</a> <script src="/download/dl_count.cgi?file=linkgen.pl"></script></p>

<ol style="margin-top:0px;">
<li><span class="row">use LWP::Simple qw(get head);</span></li>
<li><span class="row">use HTML::LinkExtor;</span></li>
<li><span class="row">use strict;</span></li>
<li><span class="row">&nbsp;</span></li>
<li><span class="row">my(%seen,%mod_time,%out,$site,$top_url);</span></li>
<li><span class="row">$top_url = '<span class="val">http://sieg.xeong.com/</span>';</span></li>
<li><span class="row">$top_url = "http://$top_url" unless $top_url =~ /^https?\b/;</span></li>
<li><span class="row">($site = $top_url) =~ s/^(http:\/\/.+\/).*$/$1/;</span></li>
<li><span class="row">$site .= "/" unless ($site =~ /\/$/);</span></li>
<li><span class="row">&nbsp;</span></li>
<li><span class="row">linker($top_url);</span></li>
<li><span class="row">&nbsp;</span></li>
<li><span class="row">sub linker {</span></li>
<li><span class="row"> &nbsp;my $base_url = shift;</span></li>
<li><span class="row"> &nbsp;my $parser = HTML::LinkExtor-&gt;new(undef, $base_url);</span></li>
<li><span class="row"> &nbsp;$parser-&gt;parse(get($base_url))-&gt;eof;</span></li>
<li><span class="row"> &nbsp;my @links = $parser-&gt;links;</span></li>
<li><span class="row"> &nbsp;for my $linkarray (@links) {</span></li>
<li><span class="row"> &nbsp; &nbsp;my @element = @$linkarray;</span></li>
<li><span class="row"> &nbsp; &nbsp;my $elt_type = shift @element;</span></li>
<li><span class="row"> &nbsp; &nbsp;while(@element) {</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp;my ($attr_name, $attr_value) = splice(@element, 0,2);</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp;if( &nbsp;$attr_name eq "href" &amp;&amp; $attr_value-&gt;scheme =~ /\b(https?)\b/ &amp;&amp; $attr_value =~ /^$site/){</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp; &nbsp;# &nbsp; &amp;&amp; ($attr_value =~ /\.xml?$/i or $attr_value =~ /\.s?html?$/i or $attr_value =~ /\.php.*$/i or $attr_value =~ /\.cgi.*$/i)){</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp; &nbsp;$attr_value =~ s/^(.+)#.*$/$1/;</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp; &nbsp;next if(defined $seen{$attr_value});</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp; &nbsp;my @heads = LWP::Simple::head($attr_value);</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp; &nbsp;if(@heads) {</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$seen{$attr_value}++;</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;my @date = $heads[2] ? gmtime($heads[2]) : gmtime(time);</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$mod_time{$attr_value} = sprintf("%04d-%02d-%02dT%02d:%02d:%02dZ", $date[5]+1900, $date[4]+1, @date[3,2,1,0]);</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp; &nbsp;}</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp;}</span></li>
<li><span class="row"> &nbsp; &nbsp;}</span></li>
<li><span class="row"> &nbsp;}</span></li>
<li><span class="row">&nbsp;</span></li>
<li><span class="row"> &nbsp;for (sort keys %seen) {</span></li>
<li><span class="row"> &nbsp; &nbsp;my $mod = $mod_time{$_};</span></li>
<li><span class="row"># &nbsp; &nbsp;s/^(.+\.cgi).*$/$1/i;</span></li>
<li><span class="row"># &nbsp; &nbsp;s/^(.+\.php).*$/$1/i;</span></li>
<li><span class="row"> &nbsp; &nbsp;if(defined $out{$_}) {</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp;next;</span></li>
<li><span class="row"> &nbsp; &nbsp;} else {</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp;$out{$_} = 'true';</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp;print qq($_ - $mod\n);</span></li>
<li><span class="row"> &nbsp; &nbsp; &nbsp;linker($_);</span></li>
<li><span class="row"> &nbsp; &nbsp;}</span></li>
<li><span class="row"> &nbsp;}</span></li>
<li><span class="row">}</span></li>
</ol>
</blockquote>]]></description>
<link>http://sieg.xeong.com/archives/2005/07/post_2.html</link>
<guid>http://sieg.xeong.com/archives/2005/07/post_2.html</guid>
<category>Perl &amp; CGI</category>
<pubDate>Sat, 02 Jul 2005 03:37:51 +0900</pubDate>
</item>
<item>
<title>Google Sitemaps</title>
<description><![CDATA[<p>遅ればせながら GoogleSitemaps を知りました<br />
詳しく読むと　なんのことはない<br />
規定のサイトマップを作るとGoogleロボットがやってきて、くまなく拾って行ってくれると言うもの<br />
これ、特にブログなんかには有効で　なかなか拾って行ってはくれなかった　過去のアーカイブなんかも拾って行ってくれるらしい<br />
まぁ、うちみたく始めたばかりのところには　あんまり効果はないかも・・</p>

<p>それにしても、Googleってどこまでやるんだろ<br />
最近登録URLが増えたせいか、ただでさえクロールの失敗が多いというのに<br />
こんなこと始めちゃって大丈夫なんだろうか<br />
もしかしたら、これからはこの Google Sitemaps を基準にする気かもね<br />
まぁ、ベータ版ですからね　いろいろと実験してるんだということかも</p>

<p>Googleアカウントを持っているので、とりあえずここでもやってみました<br />
<a href="https://www.google.com/webmasters/sitemaps/" target="_blank">Google Sitemaps (BETA)</a>にログイン後、このMovable Typeで作ったXMLのURLを指定しておきました<br />
あとは、待つだけ　たのしみ　たのしみ</p>

<p>ついでに、このことを調べてるうちになかなかいいサイトを発見<a href="http://www.hyperposition.com/se3blog/" target="_blank">検索エンジン三国志</a>なんだけど<br />
なかなかためになること色々あっていいかもよ</p>

<p><br />
更に詳しい情報:<br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://internet.watch.impress.co.jp/cda/news/2005/06/06/7906.html" target="_blank" title="INTERNET Watch">Google、更新情報などを検索結果に反映するツールでインデックス強化</a> (ニュース)<br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://kotonoha.main.jp/2005/06/04google-sitemaps.html" target="_blank"  title="Google Sitemaps グーグル・サイトマップ（ベータ版）FAQとプロトコル全訳。新しいURL登録方法はSEOに必須になる？">Google Sitemaps グーグル・サイトマップ（ベータ版）FAQとプロトコル全訳</a> (ナレッジ)<br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.hyperposition.com/se3blog/google/tools/20050606221756.html" target="_blank" title="検索エンジン三国志">Google SitemapsのMovable Typeテンプレート完全版</a> (解説)<br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://as-is.net/blog/archives/001008.html" target="_blank" title="Ogawa::Memoranda">Ogawa::Memoranda: Google Sitemaps</a> (解説＆ナレッジ)<br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://blog.takawo.net/000057.html" target="_blank" title="アフェリエイト研究室ブログ">Google SitemapsのXMLジェネレータ</a> (ツール)<br />
</p>]]></description>
<link>http://sieg.xeong.com/archives/2005/06/google_sitemaps.html</link>
<guid>http://sieg.xeong.com/archives/2005/06/google_sitemaps.html</guid>
<category>ひとりごと</category>
<pubDate>Thu, 30 Jun 2005 04:37:37 +0900</pubDate>
</item>
<item>
<title>Flash programming リンク集</title>
<description><![CDATA[<p><img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.macromedia.com/jp/support/flash/ts/documents/fl0284.html" target="_blank">Macromedia - FLTN : fl0284 - FlashVars を使用して SWF へ変数を渡す</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://hima.chu.jp/flash/" target="_blank">クジラ式 FLASH CGI</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www2.netwave.or.jp/~light/" target="_blank">ＦＬＡＳＨ道場</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.ochaden.net/technology/flash/" target="_blank">http://www.ochaden.net/technology/flash/</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://homepage3.nifty.com/ginga-b/" target="_blank">Flash ActionScript Helper</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://fpower.org/advance.htm" target="_blank">FLASH ADVANCE</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.flash-jp.com/" target="_blank">FLASH-JP.COM - FLASH-japan FORUM</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.macromedia.com/jp/macromedia/style_guide/buttons/" target="_blank">Macromedia - Macromedia Web ボタン</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://hfm-kenchan.com/" target="_blank">FlashQ&amp;A</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.d1.dion.ne.jp/~k_h7926/" target="_blank">happy</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.flashcomponents.net/" target="_blank">[ the flash components network ]</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.macromedia.com/software/flashpaper/" target="_blank">Macromedia - FlashPaper 2</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.macromedia.com/cfusion/showcase/index.cfm" target="_blank">Macromedia - Showcase</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.macromedia.com/jp/" target="_blank">Macromedia Japan</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://allabout.co.jp/computer/hpcreate/subject/msubsub_lectureflash.htm" target="_blank">FLASH，ActionScript作成講座 - ［ホームページ作成］All About(1/2)</a><br />
</p>]]></description>
<link>http://sieg.xeong.com/archives/2005/06/flash_programmi.html</link>
<guid>http://sieg.xeong.com/archives/2005/06/flash_programmi.html</guid>
<category>Link</category>
<pubDate>Wed, 29 Jun 2005 10:07:31 +0900</pubDate>
</item>
<item>
<title>Perl &amp; CGI リンク集</title>
<description><![CDATA[<p><img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.perlarchive.com/" target="_blank">Perl Archive by Creative Fundamentals, Inc.</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.harukaze.net/~mishima/perl/" target="_blank">Perl for Newbie（Perl初心者の部屋）</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.perl.com/" target="_blank">Perl.com The Source for Perl -- perl development, perl conferences</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.att.or.jp/perl/faq/perlwin32faq/perlwin32faq4j.html" target="_blank">perlwin32faq4 - Windows NT および Windows 95/98</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.din.or.jp/~ohzaki/perl.htm" target="_blank">Perlメモ</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.context.co.jp/perlinfo/" target="_blank">Perl情報メモ</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.cgispy.com/webmaster/promotion/search-tricks.shtml" target="_blank">CGISpy.com Webmaster Spot - Search Engine Tips</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://hp.vector.co.jp/authors/VA014550/perl/index2.html" target="_blank">PF：Perl CGI</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://perldoc.jp/docs/modules/MIME-Base64-2.12/Base64.pod" target="_blank">MIMEBase64 - base64文字列のエンコードとデコード</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.kawa.net/works/jcode/uni-escape.html" target="_blank">Shift_JIS に含まれない文字をエスケープ (Jcode.pm編)</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.bioinfo.jp/tips.html" target="_blank">Tips (CGI, Perl, Unix and etc.)</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://perl.infoware.ne.jp/" target="_blank">use Object; (Perl)</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://perldoc.jp/docs/modules/" target="_blank">PerlDoc of /docs/modules(日本語翻訳)</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.sitescripts.com/Perl_and_CGI/" target="_blank">Perl &amp; CGI Scripts</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://search.cpan.org/dist/Encode/JP/JP.pm#Note_on_ISO-2022-JP(-1)?" target="_blank">search.cpan.org EncodeJP - Japanese Encodings</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://par.perl.org/index.cgi" target="_blank">HomePage - PAR Homepage</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.kawa.net/works/perl/phone/pnews.html" target="_blank">phone.pl - 携帯電話キャリア自動判別ライブラリ</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www-cms.phys.s.u-tokyo.ac.jp/~naoki/CIPINTRO/CCGI/index.html" target="_blank">Introduction of CGI in C/C++</a><br />
</p>]]></description>
<link>http://sieg.xeong.com/archives/2005/06/perl_cgi.html</link>
<guid>http://sieg.xeong.com/archives/2005/06/perl_cgi.html</guid>
<category>Link</category>
<pubDate>Tue, 28 Jun 2005 10:03:43 +0900</pubDate>
</item>
<item>
<title>PROGRAMING リンク集</title>
<description><![CDATA[<p><img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://aam.ugpl.de/node/view/1060" target="_blank">Blowfish JavaScript Implementation  AAM</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.ss.iij4u.or.jp/~somali/web/_blowfish.html" target="_blank">Cepheid  - Blowfish暗号化アルゴリズム</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.microsoft.com/japan/msdn/directx/downloads.asp" target="_blank">DirectX Developer Center - Microsoft DirectX 9.0 ダウンロード</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://hail2u.net/" target="_blank">hail2u.net</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://sourceforge.jp/projects/cygwin-je" target="_blank">SourceForge.jp Project Info - Cygwin JE</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.namikilab.tuat.ac.jp/~sasada/prog/index.html" target="_blank">Prog.</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.csdinc.co.jp/archiver/lib/extents.html" target="_blank">Common Archivers Library: 拡張子別 対応DLL（圧縮解凍エンジン）一覧表</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://www.rtpro.yamaha.co.jp/RT/docs/misc/kanji-euc.html" target="_blank">euc kanji code table</a><br />
<img src="/images/file4.gif" width="16" height="16" border="0" /><a href="http://x68000.q-e-d.net/~68user/" target="_blank">68user's page</a><br />
</p>]]></description>
<link>http://sieg.xeong.com/archives/2005/06/program.html</link>
<guid>http://sieg.xeong.com/archives/2005/06/program.html</guid>
<category>Link</category>
<pubDate>Mon, 27 Jun 2005 09:58:38 +0900</pubDate>
</item>
<item>
<title>プログラミング言語の種類</title>
<description><![CDATA[<p>大きな定義からいうと　低水準言語と高水準言語に分けられます</p>

<p><br />
#-----------------------------------<br />
# 低水準言語<br />
#-----------------------------------</p>

<p>機械語とアセンブリ言語が代表的</p>

<p>■機械語<br />
CPUがそのまま解釈できる命令の集まりで、人間が直接書くことはまずない<br />
参考書: 『<a href="http://www.amazon.co.jp/exec/obidos/redirect?path=ASIN/493079529X&amp;link_code=as2&amp;camp=247&amp;tag=sieg-22&amp;creative=1211">マシン語・機械語・真心語</a><img src="http://www.assoc-amazon.jp/e/ir?t=sieg-22&amp;l=as2&amp;o=9&amp;a=493079529X" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" />』 &nbsp; (参考書: は『<a href="http://www.amazon.co.jp/" target="_blank">Amazon.co.jp</a>各商品詳細ページ』へのリンクです)</p>

<p><br />
■アセンブリ言語<br />
英単語に近いニーモック表記で、機械語の命令に1対1に対応したプログラムの作成が可能となる<br />
ただし、CPU毎に命令体系が異なるため、CPUの種類だけ機械語やアセンブリ言語は存在することになる<br />
アセンブリ言語は、CPUの全ての動作を制御することができ、非常に細かい部分までプログラム可能である<br />
つまり、アセンブリ言語を学習・理解することはCPUの動作自体を理解することになるので、コンピュータの基礎的な学習をする際には必修となる<br />
参考書: 『<a href="http://www.amazon.co.jp/exec/obidos/redirect?path=ASIN/4563007056&amp;link_code=as2&amp;camp=247&amp;tag=sieg-22&amp;creative=1211" target="_blank">アセンブリ言語</a><img src="http://www.assoc-amazon.jp/e/ir?t=sieg-22&amp;l=as2&amp;o=9&amp;a=4563007056" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" />』 『<a href="http://www.amazon.co.jp/exec/obidos/redirect?path=ASIN/4887188293&amp;link_code=as2&amp;camp=247&amp;tag=sieg-22&amp;creative=1211" target="_blank">アセンブリ言語の教科書</a><img src="http://www.assoc-amazon.jp/e/ir?t=sieg-22&amp;l=as2&amp;o=9&amp;a=4887188293" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" />』 『<a href="http://www.amazon.co.jp/exec/obidos/redirect?path=ASIN/4320120957&amp;link_code=as2&amp;camp=247&amp;tag=sieg-22&amp;creative=1211" target="_blank">アセンブリ言語の基礎―CASL2によるプログラミング</a><img src="http://www.assoc-amazon.jp/e/ir?t=sieg-22&amp;l=as2&amp;o=9&amp;a=4320120957" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" />』<br />
</p>]]></description>
<link>http://sieg.xeong.com/archives/2005/06/post_1.html</link>
<guid>http://sieg.xeong.com/archives/2005/06/post_1.html</guid>
<category>プログラミング</category>
<pubDate>Sun, 26 Jun 2005 09:39:55 +0900</pubDate>
</item>
<item>
<title>自宅サーバを公開</title>
<description><![CDATA[<p>ADSLモデムには「ルータタイプ」と「ブリッジタイプ」がある<br />
これらは、ISDNルータとTA（ターミナルアダプタ）の関係と似た関係にある<br />
ISDNによるインターネット接続では、TCP/IPをPPP（Point to Point Protocol）というプロトコルでくるんで送受信する<br />
ISDNルータはPPPを処理する機能を持つので、ISDNポートにはTCP/IPをくるんだPPPが、LANポートにはPPP部分を取り除いたTCP/IPが流れる<br />
これに対してTAは、PPPを処理しないのでISDNポート、シリアルポート（あるいはUSBポート）のどちらにもPPPが流れる<br />
PPPを処理してTCP/IPに変換するのはPCの役目だ</p>

<p>「Yahoo！BB」を除くADSLサービスでは、PPPoE（PPPoverEthe，net）やPPPoA（PPP over ATM）というプロトコルでTCP/IPを運ぶ<br />
これらは、その名のとおりイーサネットプロトコルやATMでPPPをカプセル化するものだ<br />
PPP部分にはさらにTCP／IPがカプセル化されているという、およそ美しくないプロトコルなのだが、イーサネットプロトコルやATMでPPPの持つユーザー認証機能を利用するために考案された</p>

<p><br />
■ルータタイプのモデム<br />
ルータタイプのADSLモデムは、PPPoEやPPPoAを処理する機能を持ち、LANポートにはTCP/IPが流れる<br />
ISDNルータと同じように、IPマスカレード機能により複数のPCをインターネットに同時接続させることも可能だ<br />
Webブラウジングなど、インターネット上のサーバに接続する場合は、PCの設定が簡単なルータタイプのモデムが手軽でよいのだが、IPマスカレード機能を有効にしたままでサーバを公開するには、ポートフォワードという仕組みを利用しなければならない</p>

<p><br />
■ブリッジタイプのモデム<br />
ブリッジタイプのADSLモデムは、LANポートにPPPoEが流れる<br />
そのため、LinuxマシンでPPPoEを扱えるようにする必要がある<br />
ただし、ADSL回線業者とプロバイダの両方を1社で行う「Yahoo！BB」は、ユーザー認証の必要がないため、PPPoEではなくTCP/IPが直接流れる<br />
「Yahoo！BB」を利用するときは、モデムとPCをイーサネットでつなぎ、TCP/IPの設定を行うだけで利用可能だ<br />
IPアドレスなどのネットワーク情報は、DHCPによって取得する<br />
PPPoEで接続する場合は、LinuxマシンにPPPoE接続ソフトウェアをインストールする<br />
IPアドレスなどの情報はPPPの機能で取得するので、DHCPクライアントを動かす必要はない</p>

<p>今回は、Roaring Penguin'sSoftwareInc．のRP-PPPOEを紹介しよう<br />
なお、モデムとLinuxマシンの間にPPPoE対応ブロードバンドル一夕をつなぎ、PPPoEの面倒をルータにみさせることも可能だが、サーバを公開するにはルータタイプのモデムを使うときと同様にポートフォワードの設定が必須となる<br />
</p>]]></description>
<link>http://sieg.xeong.com/archives/2005/06/post.html</link>
<guid>http://sieg.xeong.com/archives/2005/06/post.html</guid>
<category>ネットワーク</category>
<pubDate>Sat, 25 Jun 2005 03:49:07 +0900</pubDate>
</item>
<item>
<title>WebDAV</title>
<description><![CDATA[<p>#-----------------------<br />
# WebDAVってなに？<br />
#-----------------------</p>

<p>ブロードバンド環境の普及で、誰もが比較的容易に自宅サーバを持てるようになった<br />
これを、会社や学校など出先からいつでもアクセスできる便利な"ファイルサーバ"にできないか？と期待するのは私だけではあるまい<br />
残業持ち帰りのExcelファイルとか、学校のパソコン室で書いたレポートなど、サイズが大きくてフロッピーで持ち帰るっていうのもちょっとメールで送るにもアカウントがない現場から、なんてこともある<br />
FTPが使えればいいのだが、こういったシーンでは外部インターネット接続が制限されていて「webアクセスしかできません」状態なことが多い<br />
あえなく"自宅ファイルサーバ"計画は断念・・・？</p>

<p>そこで登場するのが「webDAV」（ウェブダブ）というプロトコル<br />
この名は「web−based Distributed Authoringand Versioning」の略で、長ったらしいが「webのプロトコルだけでコンテンツの書き換え/配布などをできるようにしましょう」というしくみを意味している<br />
従来、遠隔地にあるwebサーバ上のファイルはFTP経由でアクセスしないと更新できないのが常識だったが、webDAVではHTTPプロトコルを拡張、FTPなどを使わないでこれらのことができるようにした<br />
RFC2518で提案され、現在ではWindows、MacOSの多くのwebオーサリングツールが対応する</p>

<p>webDAVを使えば遠隔地サーバからのファイルのダウンロードはもちろん、アップロードも更新も可能<br />
しかもHTTPを使用するのでファイアウォール内でも利用できる可能性が高い<br />
さらに、クライアントがWindowsの場合、InternetExplorer5以降で導入された「webフォルダ」機能を用い、ファイルのやりとりが簡単にできる<br />
そのうえ、Microsoft Office2OO0以降ではwebDAVとの親和性が高くなっており、webフォルダ上のExcelファイルなどを直接集でき、しかもファイルロック機能に対応しているので複数人の共用ファイルスペースとしても活用を期待できる<br />
なお、ユーザー認証はふつうのwebコンテンツと同じように制限をかけられる<br />
</p>]]></description>
<link>http://sieg.xeong.com/archives/2005/06/webdav.html</link>
<guid>http://sieg.xeong.com/archives/2005/06/webdav.html</guid>
<category>ネットワーク</category>
<pubDate>Fri, 24 Jun 2005 05:37:25 +0900</pubDate>
</item>
<item>
<title>ダイナミックDNS</title>
<description><![CDATA[<p>ダイナミックDNSサービスを使えば、動的IPアドレスでもドメインによるインターネットサーバの公開ができる</p>

<p><br />
#--------------------------------------------<br />
# まずはダイナミックDNSについて<br />
#--------------------------------------------</p>

<p>常時接続環境が利用できるとなると、インターネットの活用法も飛躍的に広がってくる<br />
単にWebページを閲覧するだけに使用するというのではあまりにもったいない<br />
次なるステップはマイ・インターネットサーバの構築ということになるだろう<br />
プロバイダのメールサーバではメールアドレスやメールの送受信量に制限もあるだろうし、Webサーバも容量やCGIなどに制限が課せられる<br />
せっかく常時接続に近い環境が得られるのであれば、自分だけの自由なサーバを構築してみたくなるものだ</p>

<p><br />
#--------------------------------------------<br />
グローバルIPアドレスとプライベートIPアドレス<br />
#--------------------------------------------</p>

<p>インターネットに直接接続されるPCやホストには、インターネット上において一意で重複しないIPアドレスが割り当てられている<br />
このIPアドレスをグローバルIPアドレスという<br />
このグローバルIPアドレスがないとインターネット上のホストを特定することができない<br />
インターネットが考案された当時は、現在のようにインターネットが爆発的に普及し、インターネットに接続されるホストが膨大になるとは想定されていなかったため、グローバルIPアドレスが不足するという事態となってしまった<br />
こうしたグローバルIPアドレスの枯渇問題に対応するために、LANなどインターネットに直接接続されないPCやホストには、プライベートIPアドレスという内部的に使用されるIPアドレスを割り当てることが多い</p>

<p>プライベートIPアドレスでは直接インターネットに接続することはできない<br />
このため、NAT（Network Address Translation）やIPマスカレードといった、プライーベートIPアドレスとグローバルIPアドレスを変換する仕組みを利用することで、インターネット上のホストに接続できるようにしている<br />
こうした仕組みは、一種のファイアウォールとして機能するというメリットもあるが、逆にインターネット上からプライベートIPアドレスのホストに接続することはできない<br />
このため残念ながらプライベートIPアドレスによるサーバの公開は不可能だ<br />
つまりインターネットサーバを公開するとなると、グローバルIPアドレスが割り当てられていることが必須ということになる<br />
IPアドレスがグローバルIPアドレスかプライベートIPアドレスかは、割り当てられたIPアドレスの範囲（アドレス空間）で知ることができる (下記)</p>

<p><br />
----------------------------------------<br />
10.0.0.0 〜 10.255.255.255<br />
----------------------------------------<br />
172.16.0.0 〜 172.31.255.255<br />
----------------------------------------<br />
192.168.0.0 〜 192.168.255.255<br />
----------------------------------------</p>

<p><br />
これらの範囲のIPアドレスはインターネット上に存在することが禁止されているものだ<br />
ただし、ルータを使ってインターネットに接続している場合は、ルータがグローバルIPアドレスを持ち、サーバ自体はプライベートIPアドレスを持つこともある<br />
この場合は、ルーターとサーバの間でパケットをポートフォワードすることによって、サーバを外部に公開することができる</p>]]></description>
<link>http://sieg.xeong.com/archives/2005/06/dns.html</link>
<guid>http://sieg.xeong.com/archives/2005/06/dns.html</guid>
<category>ネットワーク</category>
<pubDate>Thu, 23 Jun 2005 06:30:34 +0900</pubDate>
</item>
<item>
<title>リンク元調査</title>
<description><![CDATA[<p>JavaScriptでの例です(とてもめんどうなことになってますが)</p>
<br />

<u>リファイラーをとるページ[index.html]</u><br />
<blockquote class="code">
<p><img src="/images/icon1.gif" width="14" height="10" border="0" /> Code: [<s>download</s>]</p>
<ol style="margin-top:0px;">
<li><span class="row">&lt;html&gt;</span></li>
<li><span class="row">&lt;body&gt;</span></li>
<li><span class="row">&lt;script src="js.cgi"&gt;&lt;/script&gt;</span></li>
<li><span class="row">&lt;/body&gt;</span></li>
<li><span class="row">&lt;/html&gt;</span></li>
</ol>
</blockquote>
<br />

<u>受け取るCGI[js.cgi]</u><br />
<blockquote class="code">
<p><img src="/images/icon1.gif" width="14" height="10" border="0" /> Code: [<s>download</s>]</p>
<ol style="margin-top:0px;">
<li><span class="row">print &lt;&lt;HTML;</span></li>
<li><span class="row">Content-Type: application/x-javascript\n</span></li>
<li><span class="row">rf = parent.document.referrer; //フレーム内なら top.document.referrer</span></li>
<li><span class="row">document.write(rf); //ページに表示するならば</span></li>
<li><span class="row">logurl = "js2.cgi?ref="+rf;</span></li>
<li><span class="row">document.write('&lt;script src="' + logurl + '"&gt;&lt;/script&gt;');</span></li>
<li><span class="row">HTML</span></li>
</ol>
</blockquote>
<br />


<u>記録するCGI[js2.cgi]</u><br />
<blockquote class="code">
<p><img src="/images/icon1.gif" width="14" height="10" border="0" /> Code: [<s>download</s>]</p>
<ol style="margin-top:0px;">
<li><span class="row">use CGI qw (:standard);</span></li>
<li><span class="row">$ref = param('ref');</span></li>
<li><span class="row">open FH, "&gt;&gt;js.txt";</span></li>
<li><span class="row">print FH "$ref\n";</span></li>
<li><span class="row">close FH;</span></li>
</ol>
</blockquote>
<br />

欠点 : JavaScriptを使えないまたはOFFにしているユーザの情報は得られない
]]></description>
<link>http://sieg.xeong.com/archives/2005/06/post_3.html</link>
<guid>http://sieg.xeong.com/archives/2005/06/post_3.html</guid>
<category>Perl &amp; CGI</category>
<pubDate>Wed, 22 Jun 2005 11:01:51 +0900</pubDate>
</item>
<item>
<title>Perl での正規表現</title>
<description><![CDATA[<p># 半角スペース<br />
$str = '\x20';</p>

<p># 全角スペース<br />
$str = '(?:\xA1\xA1)'; # EUC-JP<br />
$str_sjis = '(?:\x81\x40)'; # SJIS</p>

<p># 全角数字 [０-９]<br />
$str = '(?:\xA3[\xB0-\xB9])'; # EUC-JP<br />
$str_sjis = '(?:\x82[\x4F-\x58])'; # SJIS</p>

<p># 全角大文字 [Ａ-Ｚ]<br />
$str = '(?:\xA3[\xC1-\xDA])'; # EUC-JP<br />
$str_sjis = '(?:\x82[\x60-\x79])'; # SJIS</p>

<p># 全角小文字 [ａ-ｚ]<br />
$str = '(?:\xA3[\xE1-\xFA])'; # EUC-JP<br />
$str_sjis = '(?:\x82[\x81-\x9A])'; # SJIS</p>

<p># 全角アルファベット [Ａ-Ｚａ-ｚ]<br />
$str = '(?:\xA3[\xC1-\xDA\xE1-\xFA])'; # EUC-JP<br />
$str_sjis = '(?:\x82[\x60-\x79\x81-\x9A])'; # SJIS</p>

<p># 全角ひらがな [ぁ-ん]<br />
$str = '(?:\xA4[\xA1-\xF3])'; # EUC-JP<br />
$str_sjis = '(?:\x82[\x9F-\xF1])'; # SJIS</p>

<p># 全角ひらがな(拡張) [ぁ-ん゛゜ゝゞ]<br />
$str = '(?:\xA4[\xA1-\xF3]|\xA1[\xAB\xAC\xB5\xB6])'; # EUC-JP<br />
$str_sjis = '(?:\x82[\x9F-\xF1]|\x81[\x4A\x4B\x54\x55])'; # SJIS</p>

<p># 全角カタカナ [ァ-ヶ]<br />
$str = '(?:\xA5[\xA1-\xF6])'; # EUC-JP<br />
$str_sjis = '(?:\x83[\x40-\x96])'; # SJIS</p>

<p># 全角カタカナ(拡張) [ァ-ヶ・ーヽヾ]<br />
$str = '(?:\xA5[\xA1-\xF6]|\xA1[\xA6\xBC\xB3\xB4])'; # EUC-JP<br />
$str_sjis = '(?:\x83[\x40-\x96]|\x81[\x45\x5B\x52\x53])'; # SJIS</p>

<p># 半角カタカナ [ヲ-゜]<br />
$str = '(?:\x8E[\xA6-\xDF])'; # EUC-JP<br />
$str_sjis = '[\xA6-\xDF]'; # SJIS</p>]]></description>
<link>http://sieg.xeong.com/archives/2005/06/perl.html</link>
<guid>http://sieg.xeong.com/archives/2005/06/perl.html</guid>
<category>Perl &amp; CGI</category>
<pubDate>Tue, 21 Jun 2005 16:31:08 +0900</pubDate>
</item>


</channel>
</rss>