• Like
  • Save
HTML::AAFind in Yokohama.pm #4
Upcoming SlideShare
Loading in...5
×
 

HTML::AAFind in Yokohama.pm #4

on

  • 1,706 views

http://yokohama.pm.org/2009/03/yokohamapm-4.html

http://yokohama.pm.org/2009/03/yokohamapm-4.html

Statistics

Views

Total Views
1,706
Views on SlideShare
1,703
Embed Views
3

Actions

Likes
0
Downloads
1
Comments
0

3 Embeds 3

file:// 1
http://www.slideshare.net 1
http://www.slashdocs.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    HTML::AAFind in Yokohama.pm #4 HTML::AAFind in Yokohama.pm #4 Presentation Transcript

    • HTML::AAFind ID:komoriya
    • about me - ID komoriya - 名前 小森谷 一生 - 所属 livedoorでMobile関連 - Work HTTP::MobileJpCSS
    • about HTML::AAFind HTML内のアスキーアートを探します
    • アスキーアートといえば?! ____ / \ /─ ─\ / (●) (●) \ | (__人__) | ________ \ ` ⌒´ ,/ | | | ノ \ || | /´ || | | l || | ヽ -一ー_~、⌒)^),-、 | |_________| ヽ ____,ノγ⌒ヽ)ニニ- ̄ || | やる夫で学ぶHTML::AAFind
    • ____ ) やる夫で学ぶスレを2chコピペブログに投稿だお! /⌒ ⌒\ ) これで今日もホッテントリ入り間違い無しだお! /( ●) (●) \ )/⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y丶 / ::::::⌒(__人__)⌒::::: \ | |r┬-| | \ `ー'´ / ノ \ /´ ヽ カ | l l||l 从人 l||l l||l 从人 l||l カ タ ヽ -一''''''quot;~~``'ー--、 -一'''''''ー-、. タ ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) ┌┬┬┐┌┬┬┬┐┌┬┬┬┐┌┬┬┬┐ ,. - ''quot;| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ρ ̄`l  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ノ
    • ___ /⌒ ⌒\ ホジホジ /( ●) (●)\ そういえばAAって携帯から見るとどうなってるんだお? /::::::⌒(__人__)⌒::::: \ 最近は携帯からBlog見る人も多いお。 | mj |ー'´ | \ 〈__ノ / ノノ
    • ____ /::::::─三三─\ せっかくのポルナレフがケータイの /:::::::: ( ○)三(○)\ 液晶に収まりきれずにガタガタだお! |::::::::::::::::::::(__人__):::: | _____ \::::::::: |r┬-| ,/ .| | 超スピードだとか催眠術とか ノ:::::::: `ー‘´ \ | | そんなチャチなもんじゃ断じてないお
    • Mobile PC
    • ____ /⌒ ⌒\ /( ●) (●)\ /::::::⌒(__人__)⌒::::: \ AAを画像に変換して横幅を240px以下に | |r┬-| | 収めれば携帯でも見れるお! \ `ー'´ /
    • / ̄ ̄\ / _ノ \ | ( ●)(●) Blogの記事の中からAAのみを動的に判別して .| (__人__) 抜き出す必要があるだろう。 | ` ⌒ノ .ヽ } ヽ ノ \ / く\ \ | \ \ 旦~ .\ | |ヽ、二⌒)、 \
    • _,..:.:-:.:―:-:....、 ,.r:':./:.:.:.:.:.:.:.:.:.:.:.:.:.:.::`丶、 /:.:./:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.ヽ、 /:.:.:.:/:.:.:.:,r:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:.:ト:.:.:.:.:.\ /:.:.:.:.!:.:.:./:.:/:.:.:.:./:.:.:.:.:.:l:.:.:.:.:!:.ヽ:.ヽ:.:.;ヽ /:.:.:.:.:l:.:.:/:./l:.://:,:イ:.:/l:.:.:.:ハ:.jl:.:.:i:.:l:.、ヽ /:.:.:.:.:.:l:.:.:l:/:.レ_/'´/シ !:.ツ′.V ';.:.l.:.!:.:l:.:', /:.ィ:.:.:.:.:i:.:.:':.:.:.:!__```¬ ' ´ , --l:.、/:/:l:.:l ´ l;‘;.:.:.:.’,:.:.:.:.<7:::::::`ヽ _ レ/:‘:ノ!/ ';l:.:f ';.:.:.:.:.l::::::::r'′ r'::::::lヽ// '´/' Vヽ ',:.:.:.:lー- ' l::::::メ /:;'! ヾl、',:.:.:.! ` ´ /::/ AAの法則を解析すればできるはず ';ハ:.:ト,、 - ノ;.:.;' >:〈/丶、 _ -v' ´V l:,' / ヾ、 _ヽヽ、 l;' イヽ ヽ'´ `', `l:ヽ、 l:.:.ヽ\ _ヽ___', リr ´_二ュ _ ,':.:.:.:.:ヽ .Y´,........---..ミ二y::´::::::::::::::;' ,':.:.:.:.:.:.:.〉Y::::::::::::::::::::::;':::::::;'::::::::::::r 、' /:.:.:.:.:.:.:.l:.;'-、::::::::::::::::::;'::::::;':::::::::::::/ 7 /:.:.:.:.:.:/Y 〈::::::::::::::::::;'::::::;'::::::::::::ヽ.._ノ! l:.:.r:.:.:.:.:.:.:.l f:::::::::::::::::;'::::::;':::::::::::::::::;':.:.:.!
    • スペースが スペースが多い ┌─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─┐ ┌ ___ <- 10 │ / \ <- 13 │ /ノ \ u. \ <- 11 │ / (●) (●) \ <- 11 │ | (__人__) u. | どうやるんだお? <- 13 <br>区切り │ br>区切り \ u.` ⌒´ / <- 13 │ ノ \ <- 19 │ /´ ヽ <- 16 │| l \ <- 18 │ヽ -一''''''quot;~~``'ー--、 -一'''''''ー-、. <- 9 │ ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) <- 5 └
    • sub maybe_aa { my $buf = shift; return unless $buf; $buf =~ s/<.*?>//g; return unless $buf; # force delimit return - 1 if $buf =~ /ID:[a-zA-Z0-9]/; my @char = $buf =~ /$euc_reg/g; return unless @char; my @symbol; my @space = $buf =~ /$space_reg/g; if (scalar @space / scalar @char > 0.23) { return 1; } elsif (scalar @space / scalar @char > 0.18) { @symbol = $buf =~ /$symbol_reg/g; return 1 if scalar @char > 30 && scalar @symbol / scalar @char > 0.3; } @symbol = $buf =~ /$symbol_reg/g unless @symbol; return 1 if scalar @char > 30 && scalar @symbol / scalar @char > 0.7; return; }
    • /) ///) /,.=゙‘’“/ / i f ,.r=‘”-‐'つ____ 細けぇことはいいんだよ!! / / _,.-‐'~/⌒ ⌒\ / ,i ,二ニ⊃( ●). (●)\ / ノ il゙フ::::::⌒(__人__)⌒::::: \ ,イ「ト、 ,!,!| |r┬-| | / iトヾヽ_/ィquot;\ `ー'´ /
    • ____ / \ /─ ─\ / (●) (●) \ | (__人__) | そんな訳で完成したのが、 \ ` ⌒´ / HTML::AAFindです。 ,,.....イ.ヽヽ、___ ーーノ゙-、. : | '; \_____ ノ.| ヽ i | \/゙(__)\,| i | > ヽ. ハ | ||
    • SYNOPSIS use HTML::AAFind; my $finder = HTML::AAFind->new(sub { my $aa = shift; return sprintf(‘<font color=“#FF0000”>%s</font>’, $aa); }); my $new_html = $finder->find($html);
    • 抽出したAAを画像に変換 / ̄ ̄\ / ヽ_ .\ ( ●)( ●) | ____ (__人__) | / \ l` ⌒´ | /─ ─\ .{ |/ (●) ( ●) \ { /| (__人__) | ,-、 ヽ ノ、\ ` ⌒´ ,/_ / ノ/ ̄/ ` ー ─ '/>< ` ー─ ' ┌、 ヽ ヽ, / L_  ̄/ _l__( { r-、 .ト _,,二) /・ ・ 〔― ‐} Ll | l) ) >_,フ / }二 コ\ Li‐' __,,,i‐ノ l × └―イ ヽ | l i ヽl また改めて
    • REPOSITORY CodeRepos: lang/perl/HTML-AAFind
    • _ -───- _ , '´ `ヽ / / \ / __, ィ_,-ァ__,, ,,、 , 、,,__ -ァ-=彡ヘ ヽ ヽ '「 ´ {ハi′ }l || || |! || |│ 〈! | |/ノ二__‐──ァ ヽニニ二二二ヾ } ,'⌒ヽ やら・・・ /⌒!| =彳o。ト ̄ヽ '´ !o_シ`ヾ | i/ ヽ ! ! ハ!| ー─ ' i ! `' '' quot; ||ヽ l | ご清聴ありがとうがとう | | /ヽ! | |ヽ i ! ございました。 ヽ{ | ! |ノ / ヽ| _ ,、 ! ,′ \! '-゙ ‐ ゙ / レ' /| `! |\ ,′! ヽ ゙  ̄  ̄` |\ | ー ─‐ _ -‐┤ ゙、 \ / ! l |`ーr─- _ / _ -‐ 'quot; / | ゙、 ヽ ____ '´ '│ ! | ゙''‐- 、,_