ƒgƒbƒvƒy[ƒWĖphp
1001ƒRƒƒ“ƒg371KB

PerlƒR[ƒfƒBƒ“ƒO‰SŽŅŽæ–āƒXƒŒ Part 43

” ‚±‚ĢƒXƒŒƒbƒh‚Ķ‰ß‹ŽƒƒO‘qŒÉ‚ÉŠi”[‚³‚ź‚Ä‚¢‚Ü‚·
0001nobody‚³‚ń2005/08/12(‹ą) 01:26:47ID:mHnZWvqz
Perl‚ĢƒR[ƒfƒBƒ“ƒO‚ō¢‚Į‚Ä‚él‚ĢƒXƒŒ‚Å‚·B

y“Še‚·‚éŪ‚Ģ’ˆÓz
Žæ–ā‚·‚é‚Ę‚«‚Ķ“ą—e‚š‚ę‚­‹į–”‚µ‚Ä‚©‚ē“Še‚µ‚Ä‚­‚¾‚³‚¢B
uƒRƒ}ƒ“ƒh‚ĢˆÓ–”‚Ŗ‚ķ‚©‚ń‚Č‚¢v‚Ę‚©‚Ķƒ}ƒjƒ…ƒAƒ‹Œ©‚Ü‚µ‚傤B
‰ń“šŽŅ‚³‚ń‚͉½‚Å‚ą‰®‚¶‚į‚ ‚č‚Ü‚¹‚ńB

1F Ž©•Ŗ‚Ķ‚±‚¤‚¢‚¤Ž–‚Ŗ‚µ‚½‚¢B
2F ‚»‚ź‚Å‚±‚ń‚Č•—‚É‚ā‚Į‚Ă݂½‚Ŗ„„„
3F ‚±‚ń‚ČƒGƒ‰[‚Ŗo‚ďćŽč‚­s‚©‚Č‚©‚Į‚½B

Å’į‚Å‚ą1‚Ę3‚Ŗ–³‚¢‚Ę’N‚ą“š‚¦‚ē‚ź‚Č‚¢‚ęB
ƒ\[ƒX“\‚鎞‚́A‘SŠpƒXƒy[ƒX‚ŃCƒ“ƒfƒ“ƒg–Y‚ꂸ‚ɁB
—Ē‚¢‰ń“š‚Ķ—Ē‚¢Žæ–ā‚©‚ēBˆź‚ɕ׋­‚µ‚Ü‚µ‚傤B

‰ß‹ŽƒƒO‚₨Щ‚߃TƒCƒg‚Ķ >>2-10
0128nobody‚³‚ń2005/08/24(…) 05:33:37ID:???
Žæ–ā‚Å‚·B
‚o‚b‚©‚ē‚Ķ‘‚«ž‚Ż‚Ŗ‚Å‚«‚é‚̂ł·‚ŖŒg‘сiś@ƒ‚[ƒhj‚©‚ē‚Ķ‘‚«ž‚Ż‚Ķ‚Ø‚ė‚©ŠĒ—‰ę–ʂւ·‚ē“ü‚ź‚Ü‚¹‚ńB
‚b‚f‚h–{‘Ģ‚Ģƒ\[ƒX‚Ķ‚±‚æ‚ē‚ɂȂč‚Ü‚·B
http://namihei.zone.ne.jp/upup/up/44694.txt
‘¼‚É‚Ķlogƒtƒ@ƒCƒ‹‚Ęjcode.pl‚šŽg‚¢‚Ü‚·B
enctype="multipart/form-data"‚ ‚½‚č‚É–ā‘肪‚ ‚é‚ꂤ‚ÉŽv‚¤‚̂ł·‚Ŗs‚«‹l‚Ü‚Į‚Ä‚µ‚Ü‚¢‚Ü‚µ‚½B
‚Ē‚±‚š‚ǂ̂悤‚É‚·‚ź‚ĪŒg‘Ń‚©‚ē‘‚«ž‚ß‚é‚ꂤ‚ɂȂé‚Å‚µ‚傤‚©H
01291282005/08/24(…) 05:37:30ID:???
‚·‚¢‚Ü‚¹‚ńB’¼ŚƒŠƒ“ƒN‚¾‚Ę403‚ɂȂĮ‚Ä‚µ‚Ü‚¤‚ꂤ‚Å‚·B
ttp://namihei.zone.ne.jp/upup/up/44694.txt
0130nobody‚³‚ń2005/08/24(…) 06:19:55ID:???
>>128
Œ“ˆö‚ķ‚©‚Į‚Ä‚é‚Č‚ēenctype="multipart/form-data"‚šĮ‚¹‚Ī‚¢‚¢‚ā‚ń
‚»‚ź‚Ķƒtƒ@ƒCƒ‹“Y•t‚·‚é‚Ę‚«‚Ģenctype‚¾‚µ
‚Ē‚¤‚µ‚Ä‚ąenctype‘‚«‚½‚¢‚Č‚ēenctype="x-www-form-urlencoded"‚Å
0131nobody‚³‚ń2005/08/24(…) 07:33:16ID:???
>>128
ƒ}ƒ‹ƒ`‚©‚ꓚ‚¦‚é‚ń‚¶‚į‚Č‚©‚Į‚½
ށ‚ĖŽs‚ĖŽ‚ĖŽ‚ĖŽs‚ĖŽ‚ĖŽ‚ĖŽs‚ĖŽ‚ĖŽ‚ĖŽs‚ĖŽ‚ĖŽ‚ĖŽs‚ĖŽ‚ĖŽ‚ĖŽs‚ĖŽ‚Ė
01321282005/08/24(…) 07:58:30ID:???
>>130
ƒTƒ“ƒNƒXƒR
0133nobody‚³‚ń2005/08/24(…) 08:47:43ID:???
$res[131] = new m9('a')->pugyaaa();
0134nobody‚³‚ń2005/08/24(…) 09:45:36ID:???
cat unko*.txt > unkofile.txt ‚Ę“Æ‚¶‚±‚Ę‚šperl‚łǂ¤‚¢‚¤•—‚ɏ‘‚¢‚½‚ē‚¢‚¢‚Å‚µ‚傤‚©H
ƒtƒ@ƒCƒ‹‚šŠJ‚¢‚ēǂń‚Å”z—ń‚É“ü‚ź‚Ä‚©‚ē‘‚«ž‚Ž‚š‰i‰“‚ĘŒJ‚č•Ō‚·‚µ‚©‚Č‚¢‚ń‚Å‚µ‚傤‚©B
0135nobody‚³‚ń2005/08/24(…) 11:03:29ID:???
>>134
#!/usr/bin/perl
`cat unko*.txt > unkofile.txt`;
0136nobody‚³‚ń2005/08/24(…) 11:04:23ID:ephPxiIZ
unko.txt
0137nobody‚³‚ń2005/08/24(…) 11:15:53ID:???
ŠO•”ƒvƒƒOƒ‰ƒ€‚ĶˆźŲŽg‚¦‚Č‚¢iƒCƒ“ƒXƒg[ƒ‹‚³‚ź‚Ä‚¢‚Č‚¢j‚Ģ‚Å
‘¼‚Ģ•ū–@‚ØŠč‚¢‚µ‚Ü‚·B
0138nobody‚³‚ń2005/08/24(…) 11:24:30ID:???
>>134
ƒtƒ@ƒCƒ‹‚šŠJ‚¢‚ď‘‚«ž‚ނ̂šŒJ‚č•Ō‚·‚Ģ‚Ŗ•’ʁB‚½‚¾‚µ
”z—ń‚É“ü‚ź‚é‚͖̂³‘ʂȂ̂œǂń‚¾‚ē‚Ē‚ń‚Ē‚ń‘‚«o‚¹B
.
0139nobody‚³‚ń2005/08/24(…) 11:44:21ID:???
>>138
‚ ‚肪‡d ‚Å‚«‚Ü‚·‚½‚Į
0140nobody‚³‚ń2005/08/24(…) 13:14:34ID:???
>>134 >>139
‰šŒˆ‚µ‚½‚Ż‚½‚¢‚¾‚Ŗ

perl -pe "" unko*.txt > unkofile.txt
0141nobody‚³‚ń2005/08/24(…) 15:15:16ID:???
“Š•[ƒVƒXƒeƒ€‚šģ‚낤‚Ę‚µ‚Ä‚¢‚é‚̂ł·‚ŖAƒAƒhƒoƒCƒX‚ØŠč‚¢‚µ‚Ü‚·B
ƒpƒ‰ƒ[ƒ^$goodsnum‚É“ü‚ꂽ¤•i”Ō†$tmp[0]‚ɑ΂·‚链•[”$tmp[1]‚š
ƒJƒEƒ“ƒgƒAƒbƒv‚³‚¹‚½‚¢‚̂ł·‚ŖAƒƒOƒtƒ@ƒCƒ‹‚Ŗ‚¤‚Ü‚­XV‚³‚ź‚Ü‚¹‚ń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);

Šś‘Ņ‚·‚錋‰Ź(ƒƒOƒtƒ@ƒCƒ‹‚Ģ“ą—e)
ŽĄs‘O syohin555,0@Ø@ŽĄsŒć syohin555,1

ŽĄŪ‚ĢŒ‹‰Ź(ƒƒOƒtƒ@ƒCƒ‹‚Ģ“ą—e)
ŽĄs‘O syohin555,0 Ø ŽĄsŒć syohin555,0[‰üs]syohin555.1

ƒƒOƒtƒ@ƒCƒ‹‚ɂ͑¼‚É‚ą¤•i‚̓Е[ƒf[ƒ^‚Ŗ‚ ‚čAƒpƒ‰ƒ[ƒ^‚Å“n‚µ‚½¤•i‚̂݁AƒJƒEƒ“ƒgƒAƒbƒv‚³‚¹‚éŠé‚Ăł·B
‚²‚æ‚Ⴒ‚æ‚Ⴕ‚Đ\‚µ–ó‚ ‚č‚Ü‚¹‚ńB‚Ē‚¤‚¼‚ę‚낵‚­‚ØŠč‚¢‚µ‚Ü‚·B
0142nobody‚³‚ń2005/08/24(…) 15:23:02ID:???
>>141
> seek(IN,0,0);
> truncate(IN,tell());
IN‚Į‚ĉ½B
0143nobody‚³‚ń2005/08/24(…) 15:28:01ID:???
>>142
‚ I‚·‚݂܂¹‚ńB‚»‚±‚ą'LOG'‚Å‚·B
‚ą‚¤‚µ‚킯‚²‚“‚¢‚Ü‚¹‚ń‚Å‚µ‚½B
0144nobody‚³‚ń2005/08/24(…) 15:56:30ID:???
>>141
ˆźs‚Ģ’·‚³‚Ŗ•s’č‚ČƒeƒLƒXƒgƒf[ƒ^‚šA“Ē‚Żo‚µ‚Č‚Ŗ‚ē‘‚«o‚·‚͖̂³’ƒB
“¾•[”‚Ŗ 9 => 10 ‚ɂȂĮ‚½‚ē‚Ü‚ø‚¢‚ę‚ˁB
‘S•”“Ē‚Żž‚ń‚Å‚©‚ē‘S•”‘‚«o‚·‚Ģ‚Ŗ–³“ļ‚¶‚į‚Č‚¢‚©‚ȁB
0145nobody‚³‚ń2005/08/24(…) 16:05:56ID:???
>>141
>ƒƒOƒtƒ@ƒCƒ‹‚ɂ͑¼‚É‚ą¤•i‚̓Е[ƒf[ƒ^‚Ŗ‚ ‚č
‚Ø‚¢‚Ø‚¢A‚¾‚ß‚¶‚į‚ń
0146nobody‚³‚ń2005/08/24(…) 16:10:26ID:???
seek‚ątruncate‚ąwhile‚ĢŠO‚Å‚ā‚ē‚Č‚¢‚ƂˁB
chomp;‚Ŗ‚Č‚¢‚̂Ɂ‚Ž‚Ā‚Æ‚é‚ʉüs‚¾‚Æ‘‚¦‚é橁B
Ŗ–{“I‚É—¬‚ꂪ‚Ø‚©‚µ‚¢ŠóƒKƒXB
01471412005/08/24(…) 16:15:29ID:???
‚Ē‚¤‚ą–³’ƒ‚Č‚±‚Ę‚š‚µ‚Ä‚é‚ꂤ‚Å‚·‚ń‚Ü‚¹‚ńB
‚Č‚ń‚Ę‚©Šę’£‚Į‚Ă݂܂·(; ;)
01481412005/08/24(…) 17:33:40ID:???
‘ʖڂł·orz
‘å‚Ü‚©‚ȍ\‘z‚š—ū‚Į‚Ä‚¢‚é‚̂ł·‚ŖAƒAƒhƒoƒCƒX’ø‚Ƃ܂·‚Å‚µ‚傤‚©B

1.ƒƒOƒtƒ@ƒ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]‚šƒJƒEƒ“ƒgƒAƒbƒvB
6.@ary1‚šƒƒOƒtƒ@ƒCƒ‹‚Éć‘‚«‚·‚é

‚±‚ń‚ČŠ“‚¶‚Å‚µ‚傤‚©H
“Ŗ‚Ŗ”š”­‚µ‚»‚¤‚Ȃ̂łę‚낵‚­‚ØŠč‚¢‚µ‚Ü‚·B
0149nobody‚³‚ń2005/08/24(…) 17:43:24ID:???
>>148
‘å‚Ü‚©‚Č—¬‚ź‚Ķ‚»‚ń‚ČŠ“‚¶‚Å—Ē‚¢‚ĘŽv‚¤B
‚ ‚ʁA“¾•[”‚Ģƒf[ƒ^‚Ķ”z—ń‚É‚·‚é‚ń‚¶‚į‚Č‚­‚ănƒbƒVƒ…‚É‚·‚é‚Ę‚ā‚č‚ā‚·‚¢‚ĘŽv‚¤B
01501412005/08/24(…) 17:51:17ID:???
>>149
ƒnƒbƒVƒ…‚Å‚·‚©B’²‚ׂĂā‚Į‚Ă݂܂·B
‚ ‚肪‚Ę‚¤‚²‚“‚¢‚Ü‚µ‚½B
0151nobody‚³‚ń2005/08/24(…) 18:00:22ID:???
EƒƒOƒtƒ@ƒCƒ‹ŠJ‚­
Eforeach‚©while‚ňźs‚ø‚Ā“Ē‚Żž‚Ž
EƒJƒ“ƒ}‚Å‹ęŲ‚čA‚»‚ꂼ‚ź‚š•ϐ”‚Å‹ęŲ‚é
EÅ‰‚Ģ—v‘f‚Ęƒpƒ‰ƒƒ^‚Ŗˆź’v‚·‚ź‚΁AÅŒć‚Ģ—v‘f‚šƒCƒ“ƒNƒŠƒƒ“ƒg
E‚R‚‚̕ϐ”‚šƒJƒ“ƒ}‹ęŲ‚č‚Å”z—ń‚É
Eˆ—I—¹ŒćA”z—ń‚šƒƒOƒtƒ@ƒCƒ‹‚Éć‘‚«

‚¶‚Ⴞ‚߂Ȃ̂©
0152nobody‚³‚ń2005/08/24(…) 18:02:50ID:???
“K“–‚Å“®‚­‚©‚ķ‚©‚ē‚Č‚¢‚Æ‚ĒA—¬‚ź‚š—‰š‚·‚邽‚ߏdŽ‹‚ŁB

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
01531412005/08/24(…) 18:13:54ID:???
‚łłŁA‚Å·Ą„Ŗ„Ŗ„Ŗ„Ŗ(߁Ķß)„Ŗ„Ŗ„Ŗ„ŖÆ!!‚ĘŽv‚¤B
‚ą‚¤ŠŪˆź“ś‚©‚Ü‚Į‚Ă邩‚ē¬—‚µ‚Ä‚«‚½B
ÅI“I‚Čƒ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
”‚©‚ēŠm”F‚µ‚Ă݂܂·B
0154nobody‚³‚ń2005/08/24(…) 19:59:02ID:???
•ϐ”‚É“ü‚Į‚½šŒŽ®‚šŽg‚Į‚Äif•¶‚Į‚Äģ‚ź‚Ü‚¹‚ń‚©H

—Ⴆ‚΁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:???
eval
01561542005/08/24(…) 20:09:36ID:???
>>155
$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³ķ‚É“®‚©‚Č‚¢‚̂ł·‚ŖEEE

eval‚Ā‚Æ‚é‚Ę‚±‚ėŠŌˆį‚¦‚Ă܂·EEEH
0157nobody‚³‚ń2005/08/24(…) 20:23:46ID:???
>>156
$opt = "or";
eval "print 'OR: OK' if 1 == 1 $opt 2 == 1";
0158nobody‚³‚ń2005/08/24(…) 20:31:32ID:???
>>154-157
if eval "1 == 1 $opt 2 == 1";
01591542005/08/24(…) 20:59:12ID:???
>>158
ƒTƒ“ƒNƒX
‚¤‚Ü‚­‚¢‚«‚Ü‚µ‚½B
01601542005/08/24(…) 21:58:28ID:???
‚·‚¢‚Ü‚¹‚ńA‚ą‚Š‚Ƃ‚¢‚¢‚Å‚·‚©H

eval‚šŽg‚¤‚±‚ƂŁA‰‰ŽZŽq‚̕ϐ”‚š“WŠJ‚µ‚ÄšŒ•ŖŠņ‚µ‚Ä‚­‚ź‚é‚ꂤ‚ɂ͂ȂĮ‚½‚ń‚Å‚·‚ŖA
‰‰ŽZŽqˆČŠO‚̕ϐ”‚Ŗ‡‚Į‚½ź‡A‚Č‚ŗ‚©ćŽč‚­“®ģ‚µ‚Ü‚¹‚ńB

$data1 = "hogehoge";
$data2 = "foofoo";
$ptn1 = "hoge";
$ptn2 = "boo";
$opt = "or";

print "OK" if( eval"($data1 =~ m/$ptn1/) $opt ($data2 =~ m/$ptn2/)" );

—~‚µ‚¢Œ‹‰Ź‚Ķ“–‘RAOK‚Å‚·B
0161nobody‚³‚ń2005/08/24(…) 22:02:14ID:???
>>154
ƒ_ƒuƒ‹ƒNƒIƒe[ƒVƒ‡ƒ“ˆĶ‚ń‚ł邩‚ēAeval‚Ŗ‰šŽß‚·‚é‚Ģ‚Ķ
hogehoge =~ m/hoge/ or ...
‚ɂȂĮ‚Ä‚éB
0162nobody‚³‚ń2005/08/24(…) 22:04:18ID:???
>>160
$data1, $data2 ‚Ģ“Ŗ‚ɃoƒbƒNƒXƒ‰ƒbƒVƒ…“ü‚ź‚ĕϐ”“WŠJ—}§
0163nobody‚³‚ń2005/08/24(…) 22:06:32ID:???
ŽŽ‚µ‚Éeval()‚É‚µ‚Ă݂½‚ń‚Å‚·‚ŖA‚ā‚Į‚ς蓮‚«‚Ü‚¹‚ńorz
0164nobody‚³‚ń2005/08/24(…) 22:09:12ID:???
>>162
‚ ‚肪‚Ę‚¤I
0165nobody‚³‚ń2005/08/24(…) 22:16:54ID:???
>>164
eval ‚¶‚į‚Č‚­‚Ä print‚µ‚½Žž‚ɂǂ¤‚¢‚¤•¶Žš—ń‚ɂȂĮ‚Ă邩
l‚¦‚é‚Č‚čŠm”F‚µ‚½•ū‚Ŗ—Ē‚¢‚ęB
0166nobody‚³‚ń2005/08/24(…) 23:13:17ID:PXiCgge7
Žæ–₳‚¹‚ĉŗ‚³‚¢B

csv‚š“Ē‚Żž‚ń‚ŁA•\ަ‚·‚é‚Ę‚¢‚¤ƒvƒƒOƒ‰ƒ€‚š
‘‚¢‚Ä‚¢‚Ü‚·‚ŖAƒf[ƒ^‚ĶShift_JIS‚Ȃ̂Å
Shift_Jis‚šUTF-8‚É•ĻŠ·‚µ‚½‚¢‚Å‚·B

ƒlƒbƒg‚Å’²‚ׂé‚ĘJcode.pm‚Ŗ•K—v‚ʏ‘‚¢‚Ä‚ ‚č‚Ü‚µ‚½B
‘‘¬Žg‚Į‚Ă݂½‚Ę‚±‚ėAŽ„‚ŖŽg‚Į‚Ä‚¢‚éƒT[ƒo‚Ķ
•W€ƒ‚ƒWƒ…[ƒ‹‚·‚ē“ü‚Į‚Ä‚¢‚Č‚¢ƒT[ƒo‚Ȃ̂Å
Jcode.pm‚¾‚Æ‚¢‚ź‚Ä‚ąƒ_ƒ‚Å‚µ‚½B

‚»‚±‚ŁA—Fl‚ĢƒT[ƒo‚Å‚ā‚낤‚ĘŽv‚Į‚Ä‚¢‚Ü‚·‚Ŗ
—Fl‚ĢƒT[ƒo‚Ķperl5.0‚Č‚ń‚Ę‚©‚Å
Œ‹\ŒĆ‚¢‚Å‚·B•W€“I‚Čƒ‚ƒWƒ…[ƒ‹‚Ķ“ü‚Į‚Ä‚¢‚Ü‚·B

‚»‚±‚ÅŽæ–ā‚Å‚·B

‡@‚±‚ĢŠĀ‹«‚ÉJcode.pmƒtƒ@ƒCƒ‹‚¾‚Æ’u‚Æ‚Ī‚¤‚²‚­‚ꂤ‚É
‚Č‚č‚Ü‚·‚©H
‡AJcode.pm‚š’u‚­Ž–‚Å‘¼‚ĢperlƒvƒƒOƒ‰ƒ€‚Ŗ“®‚©‚Č‚­‚Č‚Į‚½‚肵‚Ü‚·‚©H
‡BJcode.pm‚š’u‚¢‚Ä‚¤‚²‚¢‚½‚Ę‚µ‚āAshift_jis‚̂܂ܕ\ަ‚·‚é‚Ģ‚Ę
@@UTF8‚É•ĻŠ·‚µ‚Ä‚©‚ē•\ަ‚·‚é‚̂ł́Aˆ—‚ĢƒXƒs[ƒh‚ɑ傫‚Č
@@ˆį‚¢‚Ŗ‚ł܂·‚©H

Ž©ŒČ‰šŒˆ•s‰Ā”\‚¾‚Į‚½‚½‚߁BB‚Ø‚Ė‚Ŗ‚¢‚µ‚Ü‚·BBorz

0167nobody‚³‚ń2005/08/24(…) 23:23:23ID:???
Jcode‚Ķ5.4ˆČć•K—v‚¾‚Į‚½‹C‚Ŗ‚·‚éB

‚É‚µ‚Ä‚ą5.0‚͂˂„‚¾‚ėB‚æ‚į‚ń‚Ę’²‚ׂė
0168nobody‚³‚ń2005/08/24(…) 23:52:46ID:???
‚Ø‘O‚ą‚¤jcode.pl‚Å‚¢‚¢‚ę
0169nobody‚³‚ń2005/08/24(…) 23:55:26ID:???
‚ą‚µ‚­‚Ķ nkf -w
0170nobody‚³‚ń2005/08/25(–Ų) 00:08:57ID:PZEhiYYs
>>168
jcode.pl‚ĶUTF-8–¢‘Ήž

•Ŗ‚©‚Į‚Ăď‘‚¢‚Ä‚é‚ĘŽv‚¤‚Ŗ‚—
0171nobody‚³‚ń2005/08/25(–Ų) 01:32:53ID:???
Perl5.6ˆČć‚É‚·‚é‚Ģ‚Ŗˆź”Ō‚Ģ‘“¹
0172nobody‚³‚ń2005/08/25(–Ų) 08:22:01ID:???
>>166
1. ƒRƒs[‚œ˂Įž‚ń‚¾‚±‚Ę‚Ŗ–³‚¢‚̂Ť‚ę‚­•Ŗ‚©‚ē‚Č‚¢‚Æ‚ĒA
Å’į‚Å‚ąJcode::*‚Ģ•Ó‚č‚ą•K—v‚¾‚ĘŽv‚¤B
2. ‚»‚ź‚Ķ–³‚¢”
3.@UTF-8•ĻŠ·‚·‚é‚ʁA‚©‚Č‚č’x‚­‚Č‚é‚Ķ‚øB

telnet/ssh‚ŖŽg‚¦‚éŠĀ‹«‚Č‚ēA‚»‚Į‚æ‚©‚ē‚«‚æ‚ń‚ĘƒCƒ“ƒXƒg[ƒ‹‚µ‚½‚Ł‚¤‚Ŗ‚¢‚¢B

>>167
5.004‚©‚ē“®‚­‚Ķ‚øB
5.005_03‚Å“®ģ‚µ‚Ä‚é‚ęB
0173nobody‚³‚ń2005/08/25(–Ų) 15:17:31ID:???
>>166
‚»‚ą‚»‚ą166‚ŖŽg‚Į‚Ä‚éƒT[ƒo‚ĢPerl‚Ģƒo[ƒWƒ‡ƒ“‚Ŗ‚ķ‚©‚ē‚ń‚Ę˜b‚ɂȂē‚ńB
‚³‚ē‚ɃT[ƒo‰ļŽŠ‚ąŽN‚¹‚Ī“Æ‚¶ŠĀ‹«‚É‹‚él‚Ŗ“š‚¦‚Ä‚­‚ź‚é‚©‚ą‚µ‚ź‚ńB
0174nobody‚³‚ń2005/08/25(–Ų) 16:09:06ID:???
>>167
>‚É‚µ‚Ä‚ą5.0‚͂˂„‚¾‚ėB
u5.4v‚ą“‚¢‚¼B

>>171
5.8.1 ˆČć‚ĢŠŌˆį‚¢‚¾‚낤B

>>173
u•W€ƒ‚ƒWƒ…[ƒ‹‚·‚ē“ü‚Į‚Ä‚¢‚Č‚¢ƒT[ƒov‚Ķ @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:???
‚·‚݂܂¹‚ńAActiveperl‚Ģ5.8.7‚ŁAWindowsXP‚Ģ“ś–{ŒźƒtƒHƒ‹ƒ_‚šˆµ‚¢‚½‚¢‚̂ł·‚ŖA
Encode‚Å‚¢‚ė‚¢‚ė‚ā‚Į‚Ă݂½‚ą‚̂̂¤‚Ü‚­‚¢‚«‚Ü‚¹‚ń‚Å‚µ‚½B

—Ⴆ‚΁A
while(<c:/bin/jane/Logs/2ch/ƒlƒbƒgŠÖŒW/WebProg/*.dat>) { }
‚Ż‚½‚¢‚ɁA‚ ‚éƒtƒHƒ‹ƒ_‚̉ŗ‚Ģ‘Sƒtƒ@ƒCƒ‹‚š‚³‚ē‚¤‚Ę‚©‚µ‚½‚¢‚̂ł·‚ŖA
“ś–{Œź‚ŖŠÜ‚Ü‚ź‚Ä‚¢‚é‚Ę‚¤‚Ü‚­‚¢‚«‚Ü‚¹‚ńB

‚Ē‚¤‚·‚ź‚΂悢‚Ģ‚©A‚ØŠč‚¢‚µ‚Ü‚·B
0176nobody‚³‚ń2005/08/25(–Ų) 18:01:49ID:???
175’Ē‹L
ƒVƒtƒgJIS‚ŃXƒNƒŠƒvƒg‚š‘‚­‚ʁA
use encoding "shiftjis";
‚š“ü‚ź‚é‚Ę‚¤‚Ü‚­‚¢‚©‚øA“ü‚ź‚Č‚¢‚Ę‚¤‚Ü‚­‚¢‚«‚Ü‚·B
i‚½‚¾‚µA‚»‚ź‚š“ü‚ź‚Č‚¢‚ʍ”“x‚Ķ‘¼‚Ģ“ś–{Œź‚šˆµ‚¤•”•Ŗ‚Ŗ‚Ø‚©‚µ‚­‚Č‚Į‚Ä‚µ‚Ü‚¢‚Ü‚·j
0177nobody‚³‚ń2005/08/25(–Ų) 18:14:31ID:???
>>175
>>13
0178nobody‚³‚ń2005/08/25(–Ų) 18:28:37ID:???
>>177
‚»‚±‚š“Ē‚ń‚Å‚¢‚ė‚¢‚ėŽŽ‚µ‚Ă݂½‚̂ł·‚Ŗc
0179nobody‚³‚ń2005/08/25(–Ų) 19:02:49ID:ZmEBADhu
’·•¶‚¾‚Į‚½ź‡A‚ ‚é’·‚³‚É‹ęŲ‚é‚ꂤ‚Č‚±‚Ę‚š‚µ‚½‚¢‚ń‚¾‚Æ‚Ē
«‚±‚ń‚ČŠ“‚¶

‚±‚ń‚É‚æ‚́APerlƒXƒNƒŠƒvƒg‚ɂ‚¢‚ÄŽæ–₪‚ ‚č„„„[’·•¶‚Ģ‚½‚ßČ—Ŗ‚µ‚Ü‚µ‚½B‘±‚«‚Ķ‚±‚æ‚ē]

Ŗ‚±‚ń‚ČŠ“‚¶‚Å•¶Ķ‚šČ—Ŗ‚µ‚½‚¢‚ń‚Å‚·‚Æ‚ĒA
‹ęŲ‚Į‚½ƒoƒCƒg‚Ŗ2byte•¶Žš‚©”»’č‚·‚é•ū–@‚Į‚Ä‚ ‚č‚Ü‚¹‚ń‚©HŒ»ó•¶Žš‰»‚Æ‚µ‚Ă܂·BBB
0180nobody‚³‚ń2005/08/25(–Ų) 19:47:47ID:???
>>179
>>11 ‚ĢƒeƒNƒjƒbƒN‚Ģ€‚Ę‚© >>13 ‚Ę‚©B
0181nobody‚³‚ń2005/08/25(–Ų) 19:57:49ID:???
>>179
$str= = Jcode->new($str)->jfold($width);
‚Å\n‹ęŲ‚čB‚½‚¾‚µ“r’†‚Ģ\n‚Ķ–³Ž‹‚·‚éB
0182nobody‚³‚ń2005/08/25(–Ų) 20:00:24ID:???
use Jcode;
$st = Jcode->new($str)->jfold($width);

‚ȁB
0183nobody‚³‚ń2005/08/25(–Ų) 20:24:33ID:???
’“ƒƒ“ƒh‚­‚³‚¢‚ā‚č•ū

$char_count = 10;
$body = "‚±‚ń‚É‚æ‚́APerlƒXƒNƒŠƒvƒg‚ɂ‚¢‚ÄŽæ–₪‚ ‚č‚Ü‚·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‚±‚ń‚É‚æ‚ķAPerlv‚ʂȂé
ƒƒ“ƒh‚­‚¹
0184nobody‚³‚ń2005/08/25(–Ų) 20:47:01ID:ZmEBADhu
>>181,>>182
ƒŒƒX‚ ‚肪‚Ę‚¤‚²‚“‚¢‚Ü‚·BŽ©•Ŗ‚ĶjcodeŽg‚Į‚ĂȂ¢‚̂ł·‚ŖA‚»‚ź‚Å‚¤‚Ü‚­‚¢‚­‚Ģ‚Č‚ēŽŽ‚µ‚Ă݂½‚¢‚ĘŽv‚¢‚Ü‚·B

>>183
‚±‚ĢŽč‚Ģ‚ā‚č•ū‚š‹‚ß‚Ä‚¢‚Ü‚µ‚½B
ŽĄŪ‚É‚ā‚Į‚Ă݂½‚̂ł·‚ŖA‚¤‚Ü‚­‚¢‚«‚Ü‚¹‚ń‚Å‚µ‚½B
Shift-JISŒĄ’č‚ĢƒvƒƒOƒ‰ƒ€‚Ȃ̂ł·‚ŖAShift-JIS‚ł͂ǂ̂悤‚É‚µ‚Ä“ś–{Œź‚Ģƒtƒ‰ƒO‚𗧂ĂĂ¢‚é‚̂łµ‚傤‚©H
FX‚ĘŒŸõ‚µ‚Ä‚¢‚é‚̂ł·‚ŖŒ©‚Ā‚©‚č‚Ü‚¹‚ńB
0185nobody‚³‚ń2005/08/25(–Ų) 20:48:56ID:???
euc‚Å
0186nobody‚³‚ń2005/08/25(–Ų) 20:49:51ID:???
>>184
•¶Žš—ń‚ĶEUC‘O’ńB
‚±‚Ģź‡‚Č‚ēAˆź‰ńjcode‚Å$body‚šEUC‚É•ĻŠ·‚µ‚Ä‚©‚ēB
‚ŁA$str‚ŖŠ®¬‚µ‚½‚ēA‚»‚ź‚šSJIS‚É–ß‚¹‚ΉšŒˆ
0187nobody‚³‚ń2005/08/25(–Ų) 20:57:13ID:???
$str =~ /^([\x00-\x7F\xA1-\xDF]|[\x81-\x9F\xE0-\xFC][\x40-\x7E\x80-\xFC])*$/ or chop $str;
0188nobody‚³‚ń2005/08/25(–Ų) 20:57:34ID:???
use encoding 'Shift-jis';
‚Åsjis‚Å‚ą³‹K•\Œ»‚Ŗ‚¤‚Ü‚­“®‚­‚Ę•·‚¢‚Ä‚¢‚邪‰“‚ĶŽŽ‚µ‚ĂȂ¢B
‚¾‚Ę‚µ‚Ä‚ą>>183•Ą‚ɂ߂ń‚Ē‚­‚³‚¢ƒ‹[ƒ`ƒ“‚š’Ź‚³‚Č‚«‚į‚¢‚Æ‚Č‚¢B
o—Ķ‚·‚é•¶ŽšƒR[ƒh‚ŖsjisŒÅ’肳悢‚̂Ȃē

use Jcode;
$str = Jcode->new($str)->jfold($width)->sjis();

‚¾B
0189nobody‚³‚ń2005/08/25(–Ų) 20:59:29ID:???
‚æ‚Ȃ݂É<br>‚Ģź‡A

$str = Jcode->new($str)->jfold( $width, "<br>" )->sjis();

‚¾B
0190nobody‚³‚ń2005/08/25(–Ų) 21:47:57ID:ZmEBADhu
‚¤[‚ńEEEeuc‚Å‚·‚©‚ŸEEE
‚Ę‚±‚ė‚ŁAjcode’Ź‚·‚ʁA”¼ŠpƒJƒ^ƒJƒi‚Ŗ•¶Žš‰»‚Æ‚µ‚Ü‚·‚ę‚ˁH
0191nobody‚³‚ń2005/08/25(–Ų) 22:06:41ID:???
&jcode::convert (\$str, "euc");
‚Ę‚©‚¾‚Æ‚¾‚Ę•¶Žš‰»‚Æ‚·‚éƒP[ƒX‚Ŗ‚ ‚é
&jcode::convert (\$str, "euc", "sjis");
‚̂悤‚ɁA•ĻŠ·‘O‚Ģ•¶ŽšƒR[ƒh‚š“n‚·‚±‚Ę‚Å‰šŒˆ‚Å‚«‚鏼‡‚ą‚ ‚é
0192nobody‚³‚ń2005/08/25(–Ų) 22:37:57ID:ZmEBADhu
>>191
‚Ȃ那‚ǁI
0193nobody‚³‚ń2005/08/25(–Ų) 22:47:27ID:???
>>187‚Ŗ–³Ž‹‚³‚ź‚Ä‚¢‚錏‚ɂ‚¢‚Ä
0194nobody‚³‚ń2005/08/25(–Ų) 22:49:28ID:???
>>175
ƒXƒNƒŠƒvƒg‚Ģ•¶ŽšƒR[ƒh‚šShift_JIS‚É‚·‚é‚©A
‚»‚ĢƒtƒHƒ‹ƒ_‚šŽ¦‚·•¶Žš—ń‚Ģ•¶ŽšƒR[ƒh‚šShift_JIS‚É•ĻŠ·‚·‚éB
01951932005/08/25(–Ų) 22:58:37ID:???
‚ AŽ©ģŽ©‰‰‚ɓ˂Įž‚Ż‚¢‚ꂿ‚į‚Į‚Ä‚½‚炲‚ß‚ńB
01961872005/08/25(–Ų) 23:29:04ID:???
‚ķ‚“‚ķ‚“–¼ę‚čo‚é‚Ģ‚ą‰½‚¾‚Ŗ‰“‚͕ʐl‚ȁB
01971972005/08/25(–Ų) 23:39:21ID:???
‰“‚Ķ ROM ‚Į‚Ä‚½
01981932005/08/26(‹ą) 00:10:46ID:???
>>196
‚¤‚ńA‚²‚ß‚ńA—¹‰š‚µ‚Ä‚éB

‚Ē‚¤‚Å‚ą‚¢‚¢‚Æ‚ĒAŽæ–āŽŅ‚͉ń“š‚ɉ½‚ē‚©‚ĢƒŠƒAƒNƒVƒ‡ƒ“Žę‚Į‚Ä—~‚µ‚¢B
uƒƒPƒƒJƒ‰ƒ“(AA—Ŗv‚Ę‚©‚Å‚ą‚¢‚¢‚©‚炳A
‚ĘŽv‚¤‰H‚Ģ–éB


‰ń“šŽŅ‚½‚æA‚Ø”ę‚ź‚³‚܁B

>>197‚ą‚Ø‚B
01991752005/08/26(‹ą) 01:24:12ID:???
>>194
‚ ‚肪‚Ę‚¤‚²‚“‚¢‚Ü‚·B
‚ʂ肠‚¦‚ø‰ŗ‚̂悤‚ČŠ“‚¶‚Å‚¤‚Ü‚­‚¢‚«‚Ü‚µ‚½B
ƒXƒNƒŠƒvƒg‚ĶƒVƒtƒgJIS‚ŏ‘‚¢‚Ä‚¢‚Ü‚·B


use encoding "shiftjis";
use Encode qw/ encode decode /;

$dir = "c:/bin/jane/Logs/2ch/ƒlƒbƒgŠÖŒ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‚ȏ‘‚«•ū‚Ŗ‚ ‚ź‚Ī‚¢‚¢‚ń‚Å‚·‚ŖcB
0200nobody‚³‚ń2005/08/26(‹ą) 04:12:47ID:0igOMeuL
>>193
H>>187‚͉½‚ÉŽg‚¤‚ń‚Å‚µ‚傤‚©H
0201nobody‚³‚ń2005/08/26(‹ą) 04:16:07ID:0igOMeuL
>>191
‚Ę‚±‚ė‚ŁAjcode‚š’Ź‚·‚Ę”¼ŠpƒJƒ^ƒJƒi‚Ŗ•¶Žš‰»‚Æ‚·‚錏‚Å‚·‚ŖAhź‡‚ą‚ ‚éh‚Ę‚¢‚¤‚±‚Ƃ́A‚ā‚Į‚Ļ‚čŠ®‘S‰šŒˆ‚Ķ–³—‚Į‚Ū‚¢‚Å‚·‚ˁB
¤—p‚ĢƒTƒCƒg‚ł͂ǂ̂悤‚É‚ā‚Į‚Ä‚é‚ń‚Å‚µ‚傤H”¼ŠpƒJƒ^ƒJƒi‚šŽg‚¢‚‚A“ś–{Œź‚šČ—Ŗ‚µ‚Ä‚¢‚éƒTƒCƒg‚š‚ę‚­Œ©‚Ü‚·B
0202nobody‚³‚ń2005/08/26(‹ą) 04:25:58ID:???
‚Č‚ń‚Åeuc‚ŏ‘‚©‚Č‚¢‚Ģ‚©‚Č‚Ÿ`
0203nobody‚³‚ń2005/08/26(‹ą) 07:19:22ID:???
>>199
Shift_JIS‚ŏ‘‚­‚Č‚ēA’¼Ś
while(glob('c:/bin/jane/Logs/2ch/ƒlƒbƒgŠÖŒW/WebProg/*.dat')) {}
‚Å‚¢‚Æ‚Č‚¢H

>>200
$count = 45;
$body = "‚±‚ń‚É‚æ‚́APerlƒXƒNƒŠƒvƒg‚ɂ‚¢‚ÄŽæ–₪‚ ‚č‚Ü‚·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:???
>>201
‚Ż‚ń‚Č‚Ŗjcode.plŽg‚Į‚Ä‚é‚킯‚¶‚į‚Č‚¢‚µB

use String::Multibyte;

$mbcs = String::Multibyte->new('ShiftJIS');
$count = 22;
$body = "‚±‚ń‚É‚æ‚́APerlƒXƒNƒŠƒvƒg‚ɂ‚¢‚ÄŽæ–₪‚ ‚č‚Ü‚·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 = "‚±‚ń‚É‚æ‚́APerlƒXƒNƒŠƒvƒg‚ɂ‚¢‚ÄŽæ–₪‚ ‚č‚Ü‚·B";
$attention = "c[’·•¶‚Ģ‚½‚ßČ—Ŗ‚µ‚Ü‚µ‚½B‘±‚«‚Ķ‚±‚æ‚ē] ";

if (length($body) > $count){
$body = substr($body, 0, $count). $attention;
}
print $body;
0205nobody‚³‚ń2005/08/26(‹ą) 07:35:48ID:???
‚»‚ź‚ʁAjcode.pl‚ŖŽ©“®”»•ʂŕ¶Žš‰»‚Æ‚·‚éŽå‚ČŒ“ˆö‚́A
jcode.pl‚ŖShift_JIS‚Ģ’č‹`‚šŒµ–§‚ɍs‚Į‚Ä‚¢‚é(”¼ŠpƒJƒi‚šŠÜ‚߂Ȃ¢)‚©‚ē‚ŁA
“ü—Ķ‘¤‚Ģ•¶ŽšƒR[ƒh‚šŽw’肵‚Ä‚ā‚ź‚Ī–ā‘č‚Č‚¢‚Ķ‚øB
0206nobody‚³‚ń2005/08/26(‹ą) 09:10:00ID:???
Žæ–ā‚Å‚·B

JavaScript ‚Ģ escape ŠÖ”‚ŃGƒ“ƒR[ƒh‚³‚ꂽ•¶Žš—ń
i%uXXXXŒ`Ž®j‚š Perl ‚ŃfƒR[ƒh‚µ‚ꂤ‚Ę‚µ‚Ä‚¢‚Ü‚·B
ŽŸ‚̂悤‚É‚ā‚é‚Ę‘S‚ă}ƒ‹ƒ`ƒoƒCƒg•¶Žš‚Ģź‡‚Ķ‚¤‚Ü‚­‚¢‚­‚̂ł·‚ŖA
”¼Šp•¶Žš‚Ŗ“ü‚Į‚Ä‚¢‚é‚Ę‚¤‚Ü‚­ƒfƒR[ƒ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
Encode“™A‘¼‚Ģ•ū–@‚Å‚ą‚ ‚č‚Ü‚µ‚½‚ē‚ę‚낵‚­‚ØŠč‚¢‚µ‚Ü‚·B
0207nobody‚³‚ń2005/08/26(‹ą) 10:23:29ID:???
>>206
$b‚Ŗ³‚µ‚¢ucs2‚¶‚į‚Č‚¢‚©‚ē‚¶‚į‚Č‚¢‚¾‚낤‚©B

$b = '%u3042%u0061%u3044%u0062'; # ‚ a‚¢b

‚ʂȂé‚Ķ‚ø‚¾‚ĘŽv‚¤‚Ģ‚¾‚ŖB
0208nobody‚³‚ń2005/08/26(‹ą) 10:57:46ID:???
207‚̂悤‚É%u0061“™‚ʏ‘‚­ˆČŠO‚ɁA%u`ˆČŠO‚Ģ1ƒoƒCƒg•¶Žš‚É
\x00‚š•₤•ū–@‚ąl‚¦‚ē‚ź‚éBƒuƒ‰ƒEƒU‚Ȃǂ©‚ē‚»‚ĢŒ`‚Å‘—‚ē‚ź‚Ä
‚­‚é‚Ģ‚ÅŽčo‚µ‚Å‚«‚Č‚¢‚Ę‚·‚é‚Ę‚±‚Ģ•ū–@‚Ģ•ū‚Ŗ‚¢‚¢‚©‚ą‚µ‚ź‚ńB

$b =~ s/(?:%u([a-fA-F0-9]{4})|(.))/($1 ne '')? pack('H4', $1): "\x00$2"/ge;
02092062005/08/26(‹ą) 11:46:38ID:???
>>207 >>208
‚ ‚肪‚Ę‚¤‚²‚“‚¢‚Ü‚µ‚½B‚¤‚Ü‚­‚¢‚«‚Ü‚µ‚½B

³‚µ‚¢ucs2‚ł͂Ȃ©‚Į‚½‚̂ł·‚ˁB
ƒAƒhƒoƒCƒX’Ź‚čC³‚·‚邱‚ƂŁAJcode‚É‚ę‚é•¶ŽšƒR[ƒh‚Ģ
Ž©“®”»•Ź‚ąŽg‚¦‚é‚ꂤ‚ɂȂč‚Ü‚µ‚½I

print jcode($b)->euc, "\n"; # OK!
0210nobody‚³‚ń2005/08/26(‹ą) 13:56:08ID:0igOMeuL
>>203
‚ ‚肪‚Ę‚¤‚²‚“‚¢‚Ü‚·I
$body =~ /^([\x00-\x7F\xA1-\xDF]|[\x81-\x9F\xE0-\xFC][\x40-\x7E\x80-\xFC])*$/ or chop $body;
Ŗ‚±‚Į‚æ‚Ģ‚ā‚č‚©‚½‚ÅŠ®ąų‚Å‚µ‚½BShiftJIS‚̂܂܂ł«‚Ü‚µ‚½B

>>202
‚¤[‚ńB‚Ü‚Ÿ”‚ʂȂĮ‚Ä‚ĶŠm‚©‚Éeuc‚Å‚ā‚Į‚½•ū‚Ŗ‚¢‚¢‚Ģ‚©‚Č‚ŸH
ƒTƒCƒgć‚ŃeƒLƒXƒgiHTMLj‚ŖSJIS‚ÅCGI‚¾‚ÆEUC‚¾‚Ęƒ`ƒOƒnƒOŠ“‚Ŗ‚ ‚č‚Ü‚·‚̂ŁB
02111832005/08/26(‹ą) 21:24:32ID:???
>>210
SJISD‚«‚Å‚ąEUC‚ÉŠµ‚ꂽ•ū‚Ŗ‚¢‚¢‚¼
‰“‚Ż‚½‚¢‚ɂȂē‚ń‚ꂤ‚É‚Č('A`)
0212nobody‚³‚ń2005/08/26(‹ą) 22:01:27ID:???
>>210
o—Ķ‚¾‚ÆShift_JIS‚É‚·‚ź‚΁H
0213nobody‚³‚ń2005/08/27(“y) 11:09:24ID:???
>>211
‚¤[‚ńB‚»‚¤‚Å‚·‚ę‚Ė‚„B^•‚ÉŽó‚ÆŽ~‚߂܂·B

>>212
‚»‚ź‚ąŽčŠŌ‚¶‚į‚Č‚¢‚Å‚·‚©H
‚»‚¤‚»‚¤Ajcode‚šŽg‚¤‚Ę”¼Šp‚Ŗ‰»‚Æ‚éˆČŠO‚ɁAˆ—‚Ŗ’x‚­‚Č‚é‚Į‚Ä‚¢‚¤‚Ģ‚Ŗ‚ ‚č‚Ü‚µ‚½B
Å‹ß‚Ķƒn[ƒh‚ĢƒXƒyƒbƒN‚Ŗć‚Ŗ‚Į‚½‚©‚ē–ā‘č‚Č‚¢‚Ę‚ąŽv‚¤‚̂ł·‚ŖB
0214nobody‚³‚ń2005/08/27(“y) 11:54:37ID:???
¤Ź¤éSJIS¤ĒĶč¤�³¤Č¤°Äˤ·¤æ¤é”©
2¤Į¤ć¤āŹŃ“¹¤·¤Ź¤¤¤·”£
0215nobody‚³‚ń2005/08/27(“y) 12:25:45ID:???
Šło‚¾‚Æ‚ĒA”¼ŠpƒJƒi‚Ŗ‰»‚Æ‚é‚Ģ‚Ķjcode‚Ŗˆ«‚¢‚킯‚¶‚į‚Č‚¢‚©‚ēB
ƒƒWƒbƒN‚ŖŠĆ‚¢‚©AH•v‚Ŗ‘«‚č‚Č‚¢‚¾‚ƁB

EUC‚¾‚ʐ³‹K•\Œ»‚ÅŠy‚Å‚«‚邱‚Ę‚ą‚ ‚邯‚ǁAƒNƒ‰ƒCƒAƒ“ƒg‚̂قƂń‚Ē‚ĶSJIS‚ĢZl‚¾‚©‚ēB
SJIS‚ĢZl‘ŠŽč‚É‚ĶSJIS‚Å‘g‚ń‚¾‚Ł‚¤‚ŖƒƒŠƒbƒg‚ɂȂ邱‚Ę‚ą‘½‚¢‚ęB

‚»‚ą‚»‚ąAÅ‹ß‚Ķjcode‚Ģo”Ō‚Ŗ‚ß‚Į‚«‚čŒø‚Į‚½‹C‚Ŗ‚·‚éB
0216nobody‚³‚ń2005/08/27(“y) 13:01:28ID:???
“ą•”ˆ—‚āƒXƒNƒŠƒvƒg‚Ģ•¶ŽšƒR[ƒh‚ÉSJISŽg‚¤‚Ģ‚ĶŽčŠŌ‘‚¦‚邾‚Æ‚¾‚©‚ē
ƒIƒXƒXƒ‚µ‚Č‚¢‚Æ‚Ē‚ČB“ü‚čŒū‚ʏoŒū‚Å•ĻŠ·‚·‚é•ū‚ŖŠyB

’†g‚ĶŒĆ‚¢l‚ĶEUC‚ŁAƒCƒ}ƒhƒL‚̐l‚Ķunicode‚Ŗ—Ē‚¢‚Å‚µ‚傤B
0217nobody‚³‚ń2005/08/27(“y) 14:53:32ID:???
UnicodeŽg‚¤‚ĘSJIS‚Č‚ń‚ÄŽg‚¤‹C‚ɂȂź‚Č‚­‚Č‚é‚ę
0218nobody‚³‚ń2005/08/27(“y) 19:10:26ID:???
‚Č‚ē‚Č‚­‚Č‚é@‚¶‚į‚Č‚¢‚©H
0219nobody‚³‚ń2005/08/27(“y) 19:25:06ID:???
Unicode‚Į‚Ä‚»‚ń‚Ȃɂ¢‚¢‚Ģ‚©Hi‘¼‚ĢƒXƒŒ‚ÅŽUXŠło‚¾‚ĘŽv‚¤‚Ŗj
grep“™‚Ģƒc[ƒ‹‚ŖŽg‚¦‚Č‚­‚Č‚é‚Ģ‚Ŗ‚æ‚Ę’É‚¢‚ń‚¾‚ę‚Č‚ŸB
V‚µ‚ß‚ĢLinuxŠĀ‹«‚¾‚ĘŽg‚¦‚é‚Ģ‚©‚ȁBBH
0220nobody‚³‚ń2005/08/27(“y) 22:05:10ID:???
Grep‚Ģ•ū‚š‚Ē‚¤‚É‚©‚µ‚ꂤ‚ŗ
0221nobody‚³‚ń2005/08/28(“ś) 16:08:49ID:???
WinXPAActivePerl6.8.1‚Å‚·B
use encoding‚āuse Encode‚šƒ\[ƒX‚É‹Lq‚µ‹N“®‚³‚¹‚é‚ʁAu–ā‘肪”­¶‚µ‚Ü‚µ‚½B‚²–Ą˜f‚š‚Ø‚©‚Æ‚µ‚āi‚’‚™v‚Ŗo‚ÄPerl‚Ŗ‹­§I—¹‚µ‚Ä‚µ‚Ü‚¢‚Ü‚·B
Encode.pm‚šƒRƒ}ƒ“ƒhƒ‰ƒCƒ“‚Å’¼Ś—§‚æć‚Ŗ‚°‚Ä‚ą“Æ‚¶‚Å‚µ‚½B
‰½‚ŖŒ“ˆö‚Å‚µ‚傤‚©H
0222nobody‚³‚ń2005/08/28(“ś) 16:11:45ID:AszUkSZs
Žæ–₳‚¹‚Ä‚­‚¾‚³‚¢B

Encode.pm‚ŖƒCƒ“ƒXƒg[ƒ‹‚³‚ź‚Ä‚¢‚éŠĀ‹«‚Ę‚»‚¤‚łȂ¢ŠĀ‹«‚ƂŁAƒvƒƒOƒ‰ƒ€“ą•”‚ŏˆ—‚š•Ŗ‚Æ‚ę‚¤‚ĘŽ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‚̂Ȃ¢ŠĀ‹«‚Å‚ĶƒRƒ“ƒpƒCƒ‹ŽžƒGƒ‰[‚Ŗo‚Ä‚µ‚Ü‚¤‚Ģ‚Å¢‚Į‚Ä‚¢‚Ü‚·B

‚±‚±‚Åeval‚š’Ź‚·‚ʁA:fallback‚ĶƒCƒ“ƒ|[ƒg‚³‚ź‚Č‚¢‚̂łµ‚傤‚©H
‚¤‚Ü‚­ˆ—‚·‚é•ū–@‚Ü‚½‚́A‚±‚ź‚É‘ć‚ķ‚鉽‚©‚¢‚¢ƒAƒCƒfƒA“™‚²‚“‚¢‚Ü‚µ‚½‚為‚Š‚Ę‚ą‹³‚¦‚Ä‚¢‚½‚¾‚«‚½‚­Žv‚¢‚Ü‚·B
0223nobody‚³‚ń2005/08/28(“ś) 16:50:57ID:???
>>221
‚ʂ肠‚¦‚øAƒAƒ“ƒCƒ“ƒXƒg[ƒ‹‚µ‚āAƒfƒBƒŒƒNƒgƒŠ‚ą‘S•”Į‚µ‚Ä‚©‚ēAÄƒCƒ“ƒXƒg[ƒ‹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:???
„WinXPAActivePerl6.8.1‚Å‚·B
‚±‚±ƒXƒ‹[‚ł‚©H
0225nobody‚³‚ń2005/08/28(“ś) 17:05:14ID:???
u‚±‚±‚¾‚Ɓ›”Ni‚ń‚Å‚éƒXƒŒv‚Ģ—Ž‚©‚ē—ˆ‚½‚ń‚¾‚낤
0226nobody‚³‚ń2005/08/28(“ś) 18:08:27ID:AszUkSZs
>>223
‚Ē‚¤‚ą‚ ‚肪‚Ę‚¤‚²‚“‚¢‚Ü‚µ‚½B
ŽQl‚É‚³‚¹‚Ä‚ą‚ē‚Į‚½‚Ę‚±‚떳ޖ–ā‘肪‰šŒˆ‚Å‚«‚Ü‚µ‚½B
0227nobody‚³‚ń2005/08/29(ŒŽ) 02:19:20ID:???
‚·‚݂܂¹‚ńŽæ–₵‚Ü‚·Bƒ[ƒ‹‚š“o˜^ƒAƒhƒŒƒX‚É”zM‚·‚éƒVƒXƒeƒ€iƒƒ‹ƒ}ƒK‚š”­s‚µ‚ꂤ‚ĘŽv‚Į‚Ă܂·j‚šl‚¦‚Ä‚¢‚é‚̂ł·‚ŖAƒAƒhƒŒƒX‚Ŗs‚²‚ʂɓü—Ķ‚³‚ź‚Ä‚¢‚éƒtƒ@ƒCƒ‹‚ʁAŽĄs—p‚Ģperl‚š—pˆÓ‚µ‚āA

$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);
}

ƒ[ƒ‹ƒAƒhƒŒƒX‚ŖŠi”[‚³‚ź‚Ä‚¢‚éƒtƒ@ƒCƒ‹i$datfilej‚š“WŠJ‚µ‚āAŠes‚š$mail‚É‘ć“üi–œ‚Ŗˆź‚šl‚¦‚Ä”¼ŠpƒXƒy[ƒX‚Ģœ‹Ž‚ąs‚Į‚Ä‚¢‚Ü‚·j‚µ‚āA“Æ‚¶ƒ[ƒ‹‚𑗐M‚µ‚ꂤ‚Ę‚µ‚Ä‚¢‚é‚̂ł·‚ŖA‘—M‚³‚ź‚郁[ƒ‹‚́A
·olFƒ†[ƒU[ID
ŽóMŽŅF$mailŠY“–ŽŅ
‚ŁA–{•¶‚ɁA

From: [email protected]
Subject: bar

$message‚É“ü‚Į‚Ä‚é•¶Žš—ń

‚ʏo‚Ä‚µ‚Ü‚¢‚Ü‚·B

ŽŽ‚µ‚É$mail‚Ģ•”•Ŗ‚Ģ‹Lq‚šŽĄŻ‚·‚éƒAƒhƒŒƒX‚ɍ·‚µ‘Ö‚¦‚½‚Ę‚±‚ėA$datafile‚Ģs”‚¾‚Ɓi‚»‚̉ń”‚¾‚Æforeach‚ŖŽĄs‚³‚ź‚é‚©‚ēj‹L“ü‚µ‚½ƒAƒhƒŒƒX‚Ƀ[ƒ‹‚Ŗ“Ķ‚«‚Ü‚µ‚½‚ŖA‚»‚Ģź‡‚́A·ol‚ÉFrom: ‚Ģ“ą—e‚ŖAŒ–¼‚ÉSubject: ‚Ģ“ą—e‚Ŗ“ü‚čA–{•¶‚É‚±‚ź‚ē‚Ķo‚Ü‚¹‚ń‚Å‚µ‚½B

‚Č‚ŗAƒYƒŒ‚Ŗ¶‚¶‚é‚̂łµ‚傤‚©HŖ–{“I‚É—‰š‚Å‚«‚ĂȂ¢‚©‚ą‚µ‚ź‚Ü‚¹‚ńB‚Ø‹³‚¦‚¢‚½‚¾‚Æ‚é‚ʍK‚¢‚Å‚·B
0228nobody‚³‚ń2005/08/29(ŒŽ) 02:31:55ID:???
$mail =~ tr/\r\n//d; ‚Ę‚Å‚ą‚µ‚Ę‚ÆB
” ‚±‚ĢƒXƒŒƒbƒh‚Ķ‰ß‹ŽƒƒO‘qŒÉ‚ÉŠi”[‚³‚ź‚Ä‚¢‚Ü‚·