PerlR[fBOSŅæāX Part 43
” ±ĢXbhĶßOqÉÉi[³źÄ¢Ü·
0001nobody³ń
2005/08/12(ą) 01:26:47ID:mHnZWvqzye·éŪĢÓz
æā·éĘ«ĶąešęᔵĩēeµÄ¾³¢B
uR}hĢÓ”Ŗķ©ńČ¢vĘ©Ķ}j A©Üµå¤B
ńҳńĶ½Åą®¶į čܹńB
1F ©ŖĶ±¤¢¤Ŗµ½¢B
2F »źÅ±ńČÉāĮÄŻ½Ŗ„„„
3F ±ńČG[ŖoÄćčs©Č©Į½B
ÅįÅą1Ę3Ŗ³¢ĘNą¦ēźČ¢ęB
\[X\éĶASpXy[XÅCfgYźøÉB
Ē¢ńĶĒ¢æā©ēBźÉ׵ܵå¤B
ßO⨩ßTCgĶ >>2-10
0128nobody³ń
2005/08/24( ) 05:33:37ID:???ob©ēͫݪūéĢÅ·ŖgŃiś@[hj©ēĶ«ŻĶØė©ĒęŹÖ·ēüźÜ¹ńB
bfh{ĢĢ\[XͱæēÉČčÜ·B
http://namihei.zone.ne.jp/upup/up/44694.txt
¼ÉĶlogt@CĘjcode.plšg¢Ü·B
enctype="multipart/form-data" ½čÉāčŖ éę¤Év¤ĢÅ·Ŗs«lÜĮĵܢܵ½B
DZšĒĢę¤É·źĪgŃ©ē«ßéę¤ÉČéŵ天H
0129128
2005/08/24( ) 05:37:30ID:???ttp://namihei.zone.ne.jp/upup/up/44694.txt
0130nobody³ń
2005/08/24( ) 06:19:55ID:???“öķ©ĮÄéČēenctype="multipart/form-data"šĮ¹Ī¢¢āń
»źĶt@CYt·éĘ«Ģenctype¾µ
ǤµÄąenctype«½¢Čēenctype="x-www-form-urlencoded"Å
0131nobody³ń
2005/08/24( ) 07:33:16ID:???}`©ę¦éń¶įČ©Į½
ĖsĖĖĖsĖĖĖsĖĖĖsĖĖĖsĖĖĖsĖĖ
0133nobody³ń
2005/08/24( ) 08:47:43ID:???0134nobody³ń
2005/08/24( ) 09:45:36ID:???t@CšJ¢ÄĒńÅzńÉüźÄ©ē«ŽšiĘJčŌ·µ©Č¢ńŵ天B
0135nobody³ń
2005/08/24( ) 11:03:29ID:???#!/usr/bin/perl
`cat unko*.txt > unkofile.txt`;
0136nobody³ń
2005/08/24( ) 11:04:23ID:ephPxiIZ0137nobody³ń
2005/08/24( ) 11:15:53ID:???¼Ģū@Øč¢µÜ·B
0138nobody³ń
2005/08/24( ) 11:24:30ID:???t@CšJ¢Ä«ŽĢšJčŌ·ĢŖŹB½¾µ
zńÉüźéĢͳŹČĢÅĒń¾ēĒńĒń«o¹B
.
0139nobody³ń
2005/08/24( ) 11:44:21ID:??? čŖd ūܷ½Į
0140nobody³ń
2005/08/24( ) 13:14:34ID:???šµ½Ż½¢¾Ŗ
perl -pe "" unko*.txt > unkofile.txt
0141nobody³ń
2005/08/24( ) 15:15:16ID:???p[^$goodsnumÉü꽤iŌ$tmp[0]ÉĪ·é¾[$tmp[1]š
JEgAbv³¹½¢ĢÅ·ŖAOt@CŖ¤ÜXV³źÜ¹ńB
R[hĶČŗĢŹčÅ·B
open(LOG, "+<$file");
flock(LOG,2);
print "Content-type: text/html\n\n";
while ($line = <LOG>) {
@@tmp = split /,/,"$line";
@if ("$tmp[0]" eq "$goodsnum"){
@@@seek(IN,0,0);
@@@$tmp[1] ++;
@@@print LOG "$tmp[0],$tmp[1]\n";
@@@truncate(IN,tell());
@@@print "¤iŌ$tmp[0]̾[Ķ$tmp[1]";
@}
}
flock(LOG,8);
close(LOG);
śŅ·éŹ(Ot@CĢąe)
ĄsO syohin555,0@Ø@Ąsć syohin555,1
ĄŪĢŹ(Ot@CĢąe)
ĄsO syohin555,0 Ø Ąsć syohin555,0[üs]syohin555.1
Ot@CÉĶ¼Éą¤iĢ[f[^Ŗ čAp[^Ånµ½¤iĢŻAJEgAbv³¹ééÄÅ·B
²æį²æįµÄ\µó čܹńBǤ¼ę뵨袵ܷB
0142nobody³ń
2005/08/24( ) 15:23:02ID:???> seek(IN,0,0);
> truncate(IN,tell());
INĮĽB
0143nobody³ń
2005/08/24( ) 15:28:01ID:??? I·ŻÜ¹ńB»±ą'LOG'Å·B
ą¤µķÆ²“¢Ü¹ńŵ½B
0144nobody³ń
2005/08/24( ) 15:56:30ID:???źsĢ·³ŖsčČeLXgf[^šAĒŻoµČŖē«o·ĢͳB
¾[Ŗ 9 => 10 ÉČĮ½ēÜø¢ęĖB
SĒŻńÅ©ēS«o·ĢŖ³ļ¶įČ¢©ČB
0145nobody³ń
2005/08/24( ) 16:05:56ID:???>Ot@CÉĶ¼Éą¤iĢ[f[^Ŗ č
آآA¾ß¶įń
0146nobody³ń
2005/08/24( ) 16:10:26ID:???chomp;ŖČ¢ĢÉĀÆéĘüs¾Æ¦éć©B
Ŗ{Iɬꪨ©µ¢óKXB
0147141
2005/08/24( ) 16:15:29ID:???ČńĘ©ę£ĮÄŻÜ·(; ;)
0148141
2005/08/24( ) 17:33:40ID:???åÜ©Č\zšūĮÄ¢éĢÅ·ŖAAhoCXøÆÜ·Åµå¤©B
1.Ot@CšJ
2.üsÅŲčŖÆÄ@ary1É¢źé
3.$ary1[0],[1],[2]...š»ź¼źJ}ÅŲčŖÆÄ@ary2Éüźé
4.whilešgĮÄ$ary2[0]Ŗp[^Év·ém[hšT·
5.©Ā©Į½ē$ary2[1]šJEgAbvB
6.@ary1šOt@CÉć«·é
±ńČ“¶Åµå¤©H
ŖŖµ»¤ČĢÅę뵨袵ܷB
0149nobody³ń
2005/08/24( ) 17:43:24ID:???åܩȬźĶ»ńČ“¶ÅĒ¢Ęv¤B
ĘA¾[Ģf[^ĶzńÉ·éń¶įČÄnbV É·éĘāčā·¢Ęv¤B
0150141
2005/08/24( ) 17:51:17ID:???nbV Å·©B²×ÄāĮÄŻÜ·B
čŖĘ¤²“¢Üµ½B
0151nobody³ń
2005/08/24( ) 18:00:22ID:???Eforeach©whileÅźsøĀĒŻŽ
EJ}ÅęŲčA»ź¼źšĻÅęŲé
EÅĢvfĘp^Ŗźv·źĪAÅćĢvfšCNg
ERĀĢĻšJ}ęŲčÅzńÉ
EI¹ćAzńšOt@CÉć«
¶į¾ßČĢ©
0152nobody³ń
2005/08/24( ) 18:02:50ID:???open(LOG, "+<$file");
print "Content-type: text/html\n\n";
while (<LOG>) {
chomp;
@tmp = split /,/;
if ($tmp[0] eq $goodsnum){ $tmp[1] ++; }
push(@txt, "$tmp[0],$tmp[1]\n");
print "¤iŌ$tmp[0]̾[Ķ$tmp[1]";
}
seek(LOG, 0, 0);
print LOG @txt;
truncate (LOG, tell(LOG));
close(LOG);
t@CĢąešŪÜézńÉüźæį¤ĢĶSŅ̾ÆĒAÜćĶšµÄü¢µÄźB
0153141
2005/08/24( ) 18:13:54ID:???ą¤Ūźś©ÜĮÄé©ē¬µÄ«½B
ÅIIČR[hͱ¤Ččܵ½B
ŻńČ čŖĘ¤I
@ary = ();
open(LOG, "+<$file");
flock(LOG,2);
print "Content-type: text/html\n\n";
while ($line = <LOG>) {
@chomp($line);
@@tmp = split /,/,"$line";
@if ("$tmp[0]" eq "$goodsnum"){
@@$tmp[1] ++;
@@push(@ary,"$tmp[0],$tmp[1]\n");
@}else{
@@push(@ary,"$tmp[0],$tmp[1]\n");
@}
}
seek(LOG, 0, 0);
print LOG @ary;
truncate (LOG, tell(LOG));
flock(LOG,8);
close(LOG);
>>151
>>152
čŖĘ¤²“¢Ü·B
”©ēmFµÄŻÜ·B
0154nobody³ń
2005/08/24( ) 19:59:02ID:???į¦ĪA±ńČ“¶ÅB
$opt = "or";
print "OR : OK" if(1 == 1 $opt 2 == 1);
$opt = "and";
print "AND : OK" if(1 == 1 $opt 2 == 1);
m\¦Źn
OR : OK
0155nobody³ń
2005/08/24( ) 20:02:21ID:???0156154
2005/08/24( ) 20:09:36ID:???$opt = "or";
print "OR : OK" if(1 == 1 eval($opt) 2 == 1);
ʵĹA
$opt = "or";
print "OR : OK" eval(if(1 == 1 $opt 2 == 1));
ʵĹA³ķÉ®©Č¢ĢÅ·ŖEEE
evalĀÆéʱėŌį¦ÄÜ·EEEH
0157nobody³ń
2005/08/24( ) 20:23:46ID:???$opt = "or";
eval "print 'OR: OK' if 1 == 1 $opt 2 == 1";
0158nobody³ń
2005/08/24( ) 20:31:32ID:???if eval "1 == 1 $opt 2 == 1";
0160154
2005/08/24( ) 21:58:28ID:???evalšg¤±ĘÅAZqĢĻšWJµÄšŖņµÄźéę¤ÉĶČĮ½ńÅ·ŖA
ZqČOĢĻŖĮ½źAČŗ©ćč®ģµÜ¹ńB
$data1 = "hogehoge";
$data2 = "foofoo";
$ptn1 = "hoge";
$ptn2 = "boo";
$opt = "or";
print "OK" if( eval"($data1 =~ m/$ptn1/) $opt ($data2 =~ m/$ptn2/)" );
~µ¢ŹĶRAOKÅ·B
0161nobody³ń
2005/08/24( ) 22:02:14ID:???_uNIe[VĶńÅé©ēAevalŖšß·éĢĶ
hogehoge =~ m/hoge/ or ...
ÉČĮÄéB
0162nobody³ń
2005/08/24( ) 22:04:18ID:???$data1, $data2 ĢŖÉobNXbV üźÄĻWJ}§
0163nobody³ń
2005/08/24( ) 22:06:32ID:???0164nobody³ń
2005/08/24( ) 22:09:12ID:??? čŖĘ¤I
0165nobody³ń
2005/08/24( ) 22:16:54ID:???eval ¶įČÄ printµ½ÉǤ¢¤¶ńÉČĮÄé©
l¦éČčmFµ½ūŖĒ¢ęB
0166nobody³ń
2005/08/24( ) 23:13:17ID:PXiCgge7csvšĒŻńÅA\¦·éĘ¢¤vOš
¢Ä¢Ü·ŖAf[^ĶShift_JISČĢÅ
Shift_JisšUTF-8ÉĻ·µ½¢Å·B
lbgŲ×éĘJcode.pmŖKvĘ¢Ä čܵ½B
¬gĮÄŻ½Ę±ėAŖgĮÄ¢éT[oĶ
WW [·ēüĮĢȢT[oČĢÅ
Jcode.pm¾Æ¢źÄą_ŵ½B
»±ÅAFlĢT[oÅāė¤ĘvĮĢܷŖ
FlĢT[oĶperl5.0ČńĘ©Å
\âŷBWIČW [ĶüĮĢܷB
»±ÅæāÅ·B
@±ĢĀ«ÉJcode.pmt@C¾ÆuÆĪ¤²ę¤É
ČčÜ·©H
AJcode.pmšużĢperlvOŖ®©ČČĮ½čµÜ·©H
BJcode.pmšu¢Ä¤²¢½ĘµÄAshift_jisĢÜÜ\¦·éĢĘ
@@UTF8ÉĻ·µÄ©ē\¦·éĢÅĶAĢXs[hÉå«Č
@@ᢪÅÜ·©H
©ČšsĀ\¾Į½½ßBBØĖŖ¢µÜ·BBorz
0167nobody³ń
2005/08/24( ) 23:23:23ID:???ɵĹ5.0ĶĖ„¾ėBæįńƲ×ė
0168nobody³ń
2005/08/24( ) 23:52:46ID:???0169nobody³ń
2005/08/24( ) 23:55:26ID:???0170nobody³ń
2005/08/25(Ų) 00:08:57ID:PZEhiYYsjcode.plĶUTF-8¢Ī
Ŗ©ĮÄÄ¢ÄéĘv¤Ŗ
0171nobody³ń
2005/08/25(Ų) 01:32:53ID:???0172nobody³ń
2005/08/25(Ų) 08:22:01ID:???1. Rs[ÅĖĮń¾±ĘŖ³¢ĢŤ檩ēČ¢ÆĒA
ÅįÅąJcode::*ĢÓčąKv¾Ęv¤B
2. »źĶ³¢”
3.@UTF-8Ļ··éĘA©ČčxČéĶøB
telnet/sshŖg¦éĀ«ČēA»Įæ©ē«æńĘCXg[µ½Ł¤Ŗ¢¢B
>>167
5.004©ē®ĶøB
5.005_03Å®ģµÄéęB
0173nobody³ń
2005/08/25(Ų) 15:17:31ID:???»ą»ą166ŖgĮÄéT[oĢPerlĢo[WŖķ©ēńĘbÉČēńB
³ēÉT[oļŠąN¹ĪÆ¶Ā«ÉélŖ¦Äźé©ąµźńB
0174nobody³ń
2005/08/25(Ų) 16:09:06ID:???>ɵĹ5.0ĶĖ„¾ėB
u5.4vࢼB
>>171
5.8.1 ČćĢŌᢾė¤B
>>173
uWW [·ēüĮĢȢT[ovĶ @nifty (@homepage) Ģ
ʼĘl¦Ä¢¢©ĘB»¤Čē 5.004 ¾© 5.005 ¾©»ĢÓ¾Į½Ęv¤B
>>166
¼É౤¢¤Išą éB
http://search.cpan.org/~hio/Unicode-Japanese-0.27/
0175nobody³ń
2005/08/25(Ų) 17:18:03ID:???EncodeÅ¢ė¢ėāĮÄŻ½ąĢ̤ܢ«Ü¹ńŵ½B
į¦ĪA
while(<c:/bin/jane/Logs/2ch/lbgÖW/WebProg/*.dat>) { }
ݽ¢ÉA étH_ĢŗĢSt@Cš³ē¤Ę©µ½¢ĢÅ·ŖA
ś{źŖÜÜźÄ¢éƤܢ«Ü¹ńB
Ǥ·źĪę¢Ģ©AØč¢µÜ·B
0176nobody³ń
2005/08/25(Ų) 18:01:49ID:???VtgJISÅXNvgšĘA
use encoding "shiftjis";
šüźéƤܢ©øAüźČ¢Ę¤Ü¢«Ü·B
i½¾µA»źšüźČ¢Ę”xĶ¼Ģś{źšµ¤ŖŖØ©µČĮĵܢܷj
0177nobody³ń
2005/08/25(Ų) 18:14:31ID:???>>13
0178nobody³ń
2005/08/25(Ų) 18:28:37ID:???»±šĒńÅ¢ė¢ėµÄݽĢÅ·Ŗc
0179nobody³ń
2005/08/25(Ų) 19:02:49ID:ZmEBADhu«±ńČ“¶
±ńÉæĶAPerlXNvgÉ¢Ŀ⪠脄„[·¶Ģ½ßČŖµÜµ½B±«Ķ±æē]
Ŗ±ńČ“¶Å¶ĶšČŖµ½¢ńÅ·ÆĒA
ęŲĮ½oCgŖ2byte¶©»č·éū@ĮÄ čܹń©H»ó¶»ÆµÄÜ·BBB
0180nobody³ń
2005/08/25(Ų) 19:47:47ID:???>>11 ĢeNjbNĢĘ© >>13 Ę©B
0181nobody³ń
2005/08/25(Ų) 19:57:49ID:???$str= = Jcode->new($str)->jfold($width);
Å\nęŲčB½¾µrĢ\nͳ·éB
0182nobody³ń
2005/08/25(Ų) 20:00:24ID:???$st = Jcode->new($str)->jfold($width);
ČB
0183nobody³ń
2005/08/25(Ų) 20:24:33ID:???$char_count = 10;
$body = "±ńÉæĶAPerlXNvgÉ¢Ŀ⪠čÜ·B";
$ascii = '[\x00-\x7F]';
$twoBytes = '[\x8E\xA1-\xFE][\xA1-\xFE]';
$threeBytes = '\x8F[\xA1-\xFE][\xA1-\xFE]';
@chars = $body =~ /($ascii|$twoBytes|$threeBytes)/og;
for ($count = 0; $count < $char_count; $count++) {
@$str .= $chars[$count];
}
$strĶu±ńÉæķAPerlvĘČé
h¹
0184nobody³ń
2005/08/25(Ų) 20:47:01ID:ZmEBADhuX čŖĘ¤²“¢Ü·B©ŖĶjcodegĮÄČ¢ĢÅ·ŖA»źÅ¤Ü¢ĢČēµÄݽ¢Ęv¢Ü·B
>>183
±ĢčĢāčūšßĢܵ½B
ĄŪÉāĮÄŻ½ĢÅ·ŖA¤Ü¢«Ü¹ńŵ½B
Shift-JISĄčĢvOČĢÅ·ŖAShift-JISÅĶĒĢę¤ÉµÄś{źĢtOš§ÄÄ¢éĢŵ天H
FXĘõµÄ¢éĢÅ·Ŗ©Ā©čܹńB
0185nobody³ń
2005/08/25(Ų) 20:48:56ID:???0186nobody³ń
2005/08/25(Ų) 20:49:51ID:???¶ńĶEUCOńB
±ĢźČēAźńjcodeÅ$bodyšEUCÉĻ·µÄ©ēB
ÅA$strŖ®¬µ½ēA»źšSJISÉß¹Īš
0187nobody³ń
2005/08/25(Ų) 20:57:13ID:???0188nobody³ń
2005/08/25(Ų) 20:57:34ID:???ÅsjisÅą³K\»Ŗ¤Ü®Ę·¢Ä¢éŖ“͵ÄČ¢B
¾ĘµÄą>>183ĄÉßńdz¢[`šŹ³Č«į¢ÆČ¢B
oĶ·é¶R[hŖsjisÅčÅę¢ĢČē
use Jcode;
$str = Jcode->new($str)->jfold($width)->sjis();
¾B
0189nobody³ń
2005/08/25(Ų) 20:59:29ID:???$str = Jcode->new($str)->jfold( $width, "<br>" )->sjis();
¾B
0190nobody³ń
2005/08/25(Ų) 21:47:57ID:ZmEBADhuʱėÅAjcodeŹ·ĘA¼pJ^JiŖ¶»ÆµÜ·ęĖH
0191nobody³ń
2005/08/25(Ų) 22:06:41ID:???Ę©¾Æ¾Ę¶»Æ·éP[XŖ é
&jcode::convert (\$str, "euc", "sjis");
Ģę¤ÉAĻ·O̶R[hšn·±ĘÅšÅ«éźą é
0192nobody³ń
2005/08/25(Ų) 22:37:57ID:ZmEBADhuČéŁĒI
0193nobody³ń
2005/08/25(Ų) 22:47:27ID:???0194nobody³ń
2005/08/25(Ų) 22:49:28ID:???XNvg̶R[hšShift_JISÉ·é©A
»ĢtH_𦷶ń̶R[hšShift_JISÉĻ··éB
0195193
2005/08/25(Ų) 22:58:37ID:???0196187
2005/08/25(Ų) 23:29:04ID:???0197197
2005/08/25(Ų) 23:39:21ID:???0198193
2005/08/26(ą) 00:10:46ID:???¤ńA²ßńA¹šµÄéB
Ē¤Åą¢¢ÆĒAæāŅĶńɽē©ĢANVęĮÄ~µ¢B
uPJ(AAŖvĘ©Åą¢¢©ē³A
Ęv¤HĢéB
ńҽæAØęź³ÜB
>>197ąØĀB
0199175
2005/08/26(ą) 01:24:12ID:??? čŖĘ¤²“¢Ü·B
Ęč ¦øŗĢę¤Č“¶Å¤Ü¢«Üµ½B
XNvgĶVtgJISŢĢܷB
use encoding "shiftjis";
use Encode qw/ encode decode /;
$dir = "c:/bin/jane/Logs/2ch/lbgÖW/WebProg";
opendir(DIR, encode("shiftjis", $dir));
@a = readdir(DIR);
closedir(DIR);
foreach(@a) {
@@$file = $dir . "/" . $_;
@@if($file =~ /dat$/) {
@@@@open(FILE, encode("shiftjis", $file));
@@@@while(<FILE>) {
@@@@@@$line = decode("shiftjis", $_);
@@@@@@if($line =~ /ń/) {
@@@@@@@@print $line;
@@@@@@}
@@@@}
@@@@close(FILE);
@@}
}
ąĮĘX}[gČ«ūŖ źĪ¢¢ńÅ·ŖcB
0201nobody³ń
2005/08/26(ą) 04:16:07ID:0igOMeuLʱėÅAjcodešŹ·Ę¼pJ^JiŖ¶»Æ·éÅ·ŖAhźą éhĘ¢¤±ĘĶAāĮĻč®SšĶ³ĮۢŷĖB
¤pĢTCgÅĶĒĢę¤ÉāĮÄéńŵå¤H¼pJ^Jišg¢ĀĀAś{źšČŖµÄ¢éTCgšę©Ü·B
0202nobody³ń
2005/08/26(ą) 04:25:58ID:???0203nobody³ń
2005/08/26(ą) 07:19:22ID:???Shift_JISÅČēA¼Ś
while(glob('c:/bin/jane/Logs/2ch/lbgÖW/WebProg/*.dat')) {}
Å¢ÆČ¢H
>>200
$count = 45;
$body = "±ńÉæĶAPerlXNvgÉ¢Ŀ⪠čÜ·B";
$attention = "c[·¶Ģ½ßČŖµÜµ½B±«Ķ±æē] ";
if (length($body) > $count){
$body = substr($body, 0, $count);
$body =~ /^([\x00-\x7F\xA1-\xDF]|[\x81-\x9F\xE0-\xFC][\x40-\x7E\x80-\xFC])*$/ or chop $body;
$body .= $attention;
}
print $body;
0204nobody³ń
2005/08/26(ą) 07:20:33ID:???ŻńČŖjcode.plgĮÄéķÆ¶įČ¢µB
use String::Multibyte;
$mbcs = String::Multibyte->new('ShiftJIS');
$count = 22;
$body = "±ńÉæĶAPerlXNvgÉ¢Ŀ⪠čÜ·B";
$attention = "c[·¶Ģ½ßČŖµÜµ½B±«Ķ±æē] ";
if ($mbcs->length($body) > $count){
$body = $mbcs->substr($body, 0, $count). $attention;
}
print $body;
--
use encoding qw(shiftjis);
$count = 22;
$body = "±ńÉæĶAPerlXNvgÉ¢Ŀ⪠čÜ·B";
$attention = "c[·¶Ģ½ßČŖµÜµ½B±«Ķ±æē] ";
if (length($body) > $count){
$body = substr($body, 0, $count). $attention;
}
print $body;
0205nobody³ń
2005/08/26(ą) 07:35:48ID:???jcode.plŖShift_JISĢč`šµ§ÉsĮÄ¢é(¼pJišÜßČ¢)©ēÅA
ü̶ͤR[hšwčµÄāźĪāčȢ͸B
0206nobody³ń
2005/08/26(ą) 09:10:00ID:???JavaScript Ģ escape ÖÅGR[h³ź½¶ń
i%uXXXX`®jš Perl ÅfR[hµę¤ĘµÄ¢Ü·B
Ģę¤ÉāéĘSÄ}`oCg¶ĢźĶ¤Ü¢ĢÅ·ŖA
¼p¶ŖüĮÄ¢éʤÜfR[hūȢę¤Åµ½B
use Jcode;
$a = '%u3042%u3044%u3046%u3048%u304A'; # ¢¤¦Ø
$b = '%u3042a%u3044b'; # a¢b
$a =~ s/%u([a-fA-F0-9]{4})/pack('H4', $1)/ge;
$b =~ s/%u([a-fA-F0-9]{4})/pack('H4', $1)/ge;
print Jcode::convert($a, 'euc', 'ucs2'), "\n";
# ¢¤¦Ø Ę\¦³źOK
print Jcode::convert($b, 'euc', 'ucs2'), "\n";
# ^? Ę\¦³źéBaČ~¶»Æ
Ā«ĶALinux, Perl 5.8.4, Jcode.pm 0.88 Å·B
Windows, ActivePerl 5.8.6, Jcode.pm 0.86 ĢĀ«ÅoĶš sjis É
Ļ¦ÄąÆ¶Åµ½B
Jcode.pm ÅĻ·Å«éū@Ķ čܷŵ天H
EncodeA¼Ģū@Åą čܵ½ēę뵨袵ܷB
0207nobody³ń
2005/08/26(ą) 10:23:29ID:???$bŖ³µ¢ucs2¶įČ¢©ē¶įČ¢¾ė¤©B
$b = '%u3042%u0061%u3044%u0062'; # a¢b
ĘČéĶø¾Ęv¤Ģ¾ŖB
0208nobody³ń
2005/08/26(ą) 10:57:46ID:???\x00šā¤ū@ąl¦ēźéBuEUČĒ©ē»Ģ`ÅēźÄ
éĢÅčoµÅ«Č¢Ę·éʱĢū@ĢūŖ¢¢©ąµźńB
$b =~ s/(?:%u([a-fA-F0-9]{4})|(.))/($1 ne '')? pack('H4', $1): "\x00$2"/ge;
0209206
2005/08/26(ą) 11:46:38ID:??? čŖĘ¤²“¢Üµ½B¤Ü¢«Üµ½B
³µ¢ucs2ÅĶČ©Į½ĢÅ·ĖB
AhoCXŹčC³·é±ĘÅAJcodeÉęé¶R[hĢ
©®»Źąg¦éę¤ÉČčܵ½I
print jcode($b)->euc, "\n"; # OK!
0210nobody³ń
2005/08/26(ą) 13:56:08ID:0igOMeuL čŖĘ¤²“¢Ü·I
$body =~ /^([\x00-\x7F\xA1-\xDF]|[\x81-\x9F\xE0-\xFC][\x40-\x7E\x80-\xFC])*$/ or chop $body;
Ŗ±ĮæĢā詽Ůąųŵ½BShiftJISĢÜÜūܵ½B
>>202
¤[ńBÜ”ĘČĮÄĶm©ÉeucÅāĮ½ūŖ¢¢Ģ©ČH
TCgćÅeLXgiHTMLjŖSJISÅCGI¾ÆEUC¾Ę`OnO“Ŗ čÜ·ĢÅB
0211183
2005/08/26(ą) 21:24:32ID:???SJISD«ÅąEUCɵź½ūŖ¢¢¼
“ݽ¢ÉČēńę¤ÉČ('A`)
0212nobody³ń
2005/08/26(ą) 22:01:27ID:???o;ÆShift_JISÉ·źĪH
0213nobody³ń
2005/08/27(y) 11:09:24ID:???¤[ńB»¤Å·ęĖ„B^ÉóÆ~ßÜ·B
>>212
»źąčŌ¶įȢŷ©H
»¤»¤Ajcodešg¤Ę¼pŖ»ÆéČOÉAŖxČéĮÄ¢¤ĢŖ čܵ½B
ÅßĶn[hĢXybNŖćŖĮ½©ēāčČ¢Ęąv¤ĢÅ·ŖB
0214nobody³ń
2005/08/27(y) 11:54:37ID:???2¤Į¤ć¤āŹŃ“¹¤·¤Ź¤¤¤·”£
0215nobody³ń
2005/08/27(y) 12:25:45ID:???WbNŖĆ¢©AHvŖ«čČ¢¾ÆB
EUC¾Ę³K\»ÅyÅ«é±Ęą éÆĒANCAgĢŁĘńĒĶSJISĢZl¾©ēB
SJISĢZlčÉĶSJISÅgń¾Ł¤ŖbgÉČé±Ęą½¢ęB
»ą»ąAÅßĶjcodeĢoŌŖßĮ«čøĮ½CŖ·éB
0216nobody³ń
2005/08/27(y) 13:01:28ID:???IXXµČ¢ÆĒČBüčūĘoūÅĻ··éūŖyB
gĶĆ¢lĶEUCÅAC}hLĢlĶunicodeŖĒ¢Åµå¤B
0217nobody³ń
2005/08/27(y) 14:53:32ID:???0218nobody³ń
2005/08/27(y) 19:10:26ID:???0219nobody³ń
2005/08/27(y) 19:25:06ID:???grepĢc[Ŗg¦ČČéĢŖæĘÉ¢ń¾ęČB
VµßĢLinuxĀ«¾Ęg¦éĢ©ČBBH
0220nobody³ń
2005/08/27(y) 22:05:10ID:???0221nobody³ń
2005/08/28(ś) 16:08:49ID:???use encodingāuse Encodeš\[XÉLqµN®³¹éĘAuāčŖ¶µÜµ½B²Ąf𨩯µÄivŖoÄPerlŖ§I¹µÄµÜ¢Ü·B
Encode.pmšR}hCżڧæćŖ°Ä௶ŵ½B
½Ŗ“öŵ天H
0222nobody³ń
2005/08/28(ś) 16:11:45ID:AszUkSZsEncode.pmŖCXg[³źÄ¢é«ƻ¤ÅȢ«ĘÅAvOąÅšŖÆę¤ĘvĮÄ¢éĢÅ·ŖAČŗ©¤Üs«Ü¹ńB
$Eflag = eval('use Encode qw/ from_to :fallbacks /; 1');
ĘāĮÄØ¢ÄA
if ($Eflag) {
from_to($_, 'utf8', 'cp932', FB_XMLCREF);
}
Ę¢¤Éµ½¢ĢÅ·ŖAevalšŹµ½ēfrom_to¾Æ¾Ę¤ÜC|[gÅ«éĢÅ·ŖA±Ģ«ū¾Ę:fallbacksĢŁ¤¾ÆC|[g³źČ¢ę¤Å·B
ŹÉevalšŹ³Č¢ÅAuse Encode qw/ from_to :fallbacks /;Ę¢½ē³ķÉ®ĢÅ·ŖA±ź¾ĘEncode.pmĢȢ«ÅĶRpCG[ŖoĵܤĢÅ¢ĮĢܷB
±±ÅevalšŹ·ĘA:fallbackĶC|[g³źČ¢Ģŵ天H
¤Ü·éū@ܽĶA±źÉćķ齩¢¢ACfA²“¢Üµ½ēŗŠĘ೦̽¾«½v¢Ü·B
0223nobody³ń
2005/08/28(ś) 16:50:57ID:???Ęč ¦øAACXg[µÄAfBNgąSĮµÄ©ēAÄCXg[B
Å«źĪAÅVĢo[WĢąĢšB
>>222
BEGIN{
eval("use Encode qw(:fallbacks from_to)");
$eflag = ($@ ? 0 : 1);
}
if ($eflag){
from_to($d, 'utf8', 'cp932', FB_XMLCREF);
print $d;
}
0224nobody³ń
2005/08/28(ś) 17:01:40ID:???±±X[ÅĀ©H
0225nobody³ń
2005/08/28(ś) 17:05:14ID:???0226nobody³ń
2005/08/28(ś) 18:08:27ID:AszUkSZsǤą čŖĘ¤²“¢Üµ½B
Qlɳ¹ÄąēĮ½Ę±ė³āčŖšÅ«Üµ½B
0227nobody³ń
2005/08/29() 02:19:20ID:???$sendmail = '/usr/sbin/sendmail';
open(LOG,"$datfile");
flock(LOG, LOCK_EX);
@alldata = <LOG>;
close(LOG);
foreach $mail (@alldata){
$mail =~ s/ //g;
open(MAIL,"| $sendmail -t");
print MAIL "To: $mail\n";
print MAIL "From: magazine\@foo.co.jp\n";
print MAIL "Subject: bar\n\n";
print MAIL "$message\n";
close(MAIL);
}
[AhXŖi[³źÄ¢ét@Ci$datfilejšWJµÄAesš$mailÉćüiŖźšl¦Ä¼pXy[XĢąsĮĢܷjµÄAƶ[šMµę¤ĘµÄ¢éĢÅ·ŖAM³źé[ĶA
·olF[U[ID
óMŅF$mailYŅ
ÅA{¶ÉA
From: [email protected]
Subject: bar
$messageÉüĮÄé¶ń
ĘoĵܢܷB
µÉ$mailĢŖĢLqšĄŻ·éAhXÉ·µÖ¦½Ę±ėA$datafileĢs¾Æi»Ģń¾ÆforeachŖĄs³źé©ējLüµ½AhXÉ[ŖĶ«Üµ½ŖA»ĢźĶA·olÉFrom: ĢąeŖA¼ÉSubject: ĢąeŖüčA{¶É±źēĶoܹńŵ½B
ČŗAYŖ¶¶éĢŵ天HŖ{IɚūÄČ¢©ąµźÜ¹ńBس¦¢½¾ÆéĘK¢Å·B
0228nobody³ń
2005/08/29() 02:31:55ID:???” ±ĢXbhĶßOqÉÉi[³źÄ¢Ü·