【Perl】初心者コーナーPart9
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001名無しさん@お腹いっぱい。
01/12/28 23:21ID:SPLRvqQi1:自分はこう言う事がしたい。
2:それでこんな風にやってみたが・・・
3:それだとこんなエラーが出て上手く行かなかった。
1と3が無いと誰も答えられないよ、良い回答は良い質問から。
一緒に勉強しましょう。
参考書籍はこちら【【Perl,CGI】参考書籍 第2版 】
http://pc.2ch.net/test/read.cgi/php/988809842/
CGIの質問はこちら【CGIだけど、なんか質問ある?part5】
http://pc.2ch.net/test/read.cgi/php/1009331505/
その他の雑多な話題は、【CGIに依存しないPerlの話題一般】
http://pc.2ch.net/test/read.cgi/php/991313362/
過去ログ、その他の役立ち情報は>>2-10を見よう。
0855844
02/02/19 00:16ID:???うひゃー(;д:)
出来ました。ありがとうございましたぁ(;_;)
あぁ、しかし、凄い初心者な質問だったということが
解答から見て取れる・・・ 鬱だ。(2週間目で初心者そのものですが)
0856名無しさん@お腹いっぱい。
02/02/19 01:06ID:???いやめんどくさそうだから誰も書かなかったんだと思うよ。
0857名無しさん@お腹いっぱい。
02/02/19 01:13ID:u2bv8Yg8で、これを飛ばすのにはどうしたらいいのでしょうか?
1000
<html><head><meta http-equiv="Content-Type" content="text/html; charset=x-sjis"><base href="http://pc.2ch.net/test/read.cgi/php/" target="body"></head><body><font size=2>
<a href="1003539977/l50">1: WebProg板の名無しさんを決めよう (299)</a>
<a href="1013945931/l50">2: ASP VS PHP (24)</a>
(略)
<a href="987850713/l50">304: PH
572
PとJAVAさぶれっと (26)</a>
<a href="987470871/l50">305: デザイナーとの連携 (28)</a>
(略)
</body></html>
0
0858名無しさん@お腹いっぱい。
02/02/19 01:19ID:???HTTPのリザルトコード・・・にしては不自然。
何の話よ?ところで。
0859名無しさん@お腹いっぱい。
02/02/19 01:44ID:???まあtelnet系でも混ざってるんでPerlに限った話でもないでしょうし
ブラウザソースでは消えるんですが。
でも整形する時にはかなり邪魔なのでどうしたものかなぁ、と。。。
0860名無しさん@お腹いっぱい。
02/02/19 02:09ID:???実は今、改めてみてみると、
$xxx= 3;
$xxxが絶対"3"で無ければなりたたない解答だと言うことに気付いた…(爆)
これじゃ$xxxが5だった場合に即破綻してしまう(汗)
う、うーん・・・。結構難しいのか・・・?
と、取り敢えず>>854をヒントに頑張ってみよう(;´д`)
ヒントは確かにもらえた感じがする。
お礼も「ありがとう」ぐらいしか言えないし、頼ってばかりでもなんだし(汗)
0861名無しさん@お腹いっぱい。
02/02/19 02:21ID:uiFxg8op$xxx = 3;
$i =1;
foreach(@zzz) {
print $_;
if ($xxx == $i) { print "<BR>"; $i = 1; }
else { ++$i; }
}
0862名無しさん@お腹いっぱい。
02/02/19 02:22ID:???foreach (@zzz) {
print;
$i++; $i %= $xxx;
print '<BR>' unless $i;
}
0863862
02/02/19 02:26ID:???0864名無しさん@お腹いっぱい。
02/02/19 02:27ID:???chunk-part-size の 16進表記
詳しくはHTTP/1.1仕様書などを見れ
0865名無しさん@お腹いっぱい。
02/02/19 02:59ID:???あっ、お二方、ありがとうございます(;-;)
しかし、同じ結果処理に色々な解答が出るものだなぁ。
いつか質問者じゃなくて解答者になれるんだろうかなぁ。
頑張ろう(>_<
0866名無しさん@お腹いっぱい。
02/02/19 03:04ID:???一つの問いに数多の解答、がPerl。
半年がんばれば、回答者に入ってくると思うよ。
0867名無しさん@お腹いっぱい。
02/02/19 06:03ID:???ということでHTTP/1.0にしたらなんとなく解決しましたです。。
う、、これは逃げなのか、、(^_^;)
0868864
02/02/19 07:21ID:???http://www.studyinghttp.net/rfc_ja/2616/sec3.html#sec3.6
http://www.studyinghttp.net/rfc_ja/2616/sec19.html#sec19.4.6
説明めんどいので、悪いがこの辺読んで理解してくれ。
0869名無しさん@お腹おっぱい。
02/02/19 07:41ID:???例えば現時点でWEBプログラム板の上位にあるスレ
のスレタイトルをHTMLにインクルードしたい場合、
どんな処理をしたら良いのでしょうか。。
0870名無しさん@お腹いっぱい。
02/02/19 07:52ID:???対象を取得し,解析し,変換し,書き出す。
0871名無しさん@お腹いっぱい。
02/02/19 12:43ID:???上位スレッドはsubject.txtに書き出されてるはずだから、
それを使えばいいと思う。
が、今のスクリプトってsubject.txtはどこにあるんだろ?
http://pc.2ch.net/php/subject.txt
ここじゃないんだぁ…。
0872名無しさん@お腹いっぱい。
02/02/19 22:15ID:???いや subject.txt は確かにそこにあるんだけど、
Monazillaに属する2ch専用ブラウザじゃなきゃ読み込めないように
しちゃったんだよね。。一応読み込む方法はあるんだけど。
0873名無しさん@お腹いっぱい。
02/02/20 02:43ID:zdJQxaGu以下は『1である限りはif文以下を実行せよ』という
スクリプトなのですが、何が1なのでしょうか?
『何かが1である限り』ではなく、『偽である限り』という意味なのでしょうか?
それなら何が偽なのでしょう?
while(0)とすると何も実行せずに終ってしまいます。
#!/usr/bin/perl -w
$| = 1;
$test = "mona";
while (1) {
if ($pid = fork) { wait; } else { print "子プロセス\t$test\n"; }
}
よろしくお願いします。
0874名無しさん@お腹いっぱい。
02/02/20 03:38ID:???while( ループ継続条件 ){
だから while (1)は、何時までもやってろゴルァ(゚Д゚)y-~~
0875名無しさん@お腹いっぱい。
02/02/20 03:40ID:???> 何が1
while の条件が1でしょ。常に真だろ。
あと、何でwaitpidじゃなくてwaitしてんの?
0876名無しさん@お腹いっぱい。
02/02/20 03:41ID:3mg+TPcGあ、そうでした。
0が偽、1が真だった。
でも・・・何を評価して真か偽かを決めてるんですか?
ごめんなさい。
0877名無しさん@お腹いっぱい。
02/02/20 05:02ID:???>0が偽、1が真だった。
だよね。
だから、while (1) { は
while (真) { っていうワケで常に真。
0878名無しさん@お腹いっぱい。
02/02/20 05:05ID:dXs9ILx0それだ!
うう・・・ありがとうございます。
そしてお休みなさい・・・。
0879名無しさん@お腹いっぱい。
02/02/20 05:33ID:???真 0以外
でないの?
0880名無しさん@お腹いっぱい。
02/02/20 05:40ID:???0881名無しさん@お腹いっぱい。
02/02/20 05:59ID:???0882名無しさん@お腹いっぱい。
02/02/20 06:54ID:???0883名無しさん@お腹いっぱい。
02/02/20 10:47ID:???条件式には-1の場合もあり得る。
0884名無しさん@お腹いっぱい。
02/02/20 12:32ID:???$a = "aaa.jpeg";
$oks = "jpeg";
if($a =~ /\.$oks$/i){
print "aru";
}
ファイル名の拡張子を調べるルーチンを組みたいのですが・・・
0885名無しさん@お腹いっぱい。
02/02/20 12:49ID:???「〜はPerlでは出来ないのですか?」と聞く前にまず自分が間違っていないかどうか確かめろ。
つーか、>>884の結果は「aru」なんだが、アンタどういう環境で実行してんだ?
0886名無しさん@お腹いっぱい。
02/02/20 13:18ID:???解決。見まちがえてました(爆
0887名無しさん@お腹いっぱい。
02/02/20 15:47ID:Mi91V+XZどん裏でどんどん画像をダウンロードすることです。すでにダウンロードを始め
ているファイルの転送が完了しないうちに次行に書かれてあるURLからダウンロー
ド始める・・・要するに同時にいくつものファイルをダウンロードするというも
のですが、forkの使い方で躓いています。
でも以下のスクリプトだと$fileの最初の行のURLをダウンロードし続けるだけで
す。実はforkの使い方がよく分かっておりません。
子プロセス側の処理はオーケーとして、親プロセス側の処理が問題なのではない
かと睨んでいますが、どうにも・・・。
よろしくお願いします。
#!/usr/bin/perl -w
$file = "./image";
open (READ, "<$file");
while (<READ>) { $data_url = "$_"; &get("$data_url"); }
close (READ);
sub get {
while (1) {
if (fork) {
wait;
} else {
print "Download: $_[0]\n";
system "wget -q $_[0] ";
exit;
}
}
}
0888名無しさん@お腹いっぱい。
02/02/20 16:12ID:???同様にページのテキストの色を設定するのはどう書き加えればいいですか?
0889名無しさん@お腹いっぱい。
02/02/20 16:15ID:???死んでしまえ。
0890名無しさん@お腹いっぱい。
02/02/20 16:17ID:???Web制作
http://pc.2ch.net/hp/
こっちで聞いてごらんよ。
コーディングで変えたいっていうんだったら、フォントの色を変える部分で変数使ったらいい。
0891名無しさん@お腹いっぱい。
02/02/20 16:17ID:???>>874
>>888
作者に聞け
0892名無しさん@お腹いっぱい。
02/02/20 16:36ID:???上の方でwaitpidの事シカトされたから教えてやんない。
0893名無しさん@お腹いっぱい。
02/02/20 16:40ID:???Missing right curly or square bracket at D:\usr\www\home\chat\chat.cgi line 834,
at end of line
syntax error at D:\usr\www\home\chat\chat.cgi line 834, at EOF
Execution of D:\usr\www\home\chat\chat.cgi aborted due to compilation errors.
0894名無しさん@お腹いっぱい。
02/02/20 16:43ID:???{}の対応がおかしくなっているのでは。
ブラケットを確認セヨ。
0895名無しさん@お腹いっぱい。
02/02/20 16:49ID:???EOFまでのあいだに}が見つからないって話だよね。
0896名無しさん@お腹いっぱい。
02/02/20 16:56ID:???即レスさんくす!
さっそく探してみます!
0897名無しさん@お腹いっぱい。
02/02/20 17:07ID:???やったやった!動いた!ありがとう!
0898名無しさん@お腹いっぱい。
02/02/20 17:15ID:???よかったねー!
0899吉野家紗香
02/02/20 19:33ID:cwPAEcoba2.html
gikogiko.cgi
omaegana ――― b1.html
b2.html
omaemona ――― haa.txt
oremona ――― itteyoshu.dat
z.html
こういうファイル構成から下のようなファイル一覧を作るには、
どのようにやればよいですか?
a1.html
a2.html
gikogiko.cgi
omaegana/b1.html
omaegana/b2.html
omaegana/omaemona/haa.txt
omaegana/oremona/itteyoshu.dat
0900名無しさん@お腹いっぱい。
02/02/20 19:54ID:???0901名無しさん@お腹いっぱい。
02/02/20 20:09ID:???http://www.angelfire.com/ak5/2ch-web-program/kako/979894521.html の97
0902901
02/02/20 20:10ID:???0903名無しさん@お腹いっぱい。
02/02/20 21:12ID:???0904名無しさん@お腹いっぱい。
02/02/20 22:51ID:Mi91V+XZ頭がいっぱいいっぱいでwhile(1)のことばかり気にしていて・・・。
ごめんなさい。
>>887の件、教えて下さい。
0905名無しさん@お腹いっぱい。
02/02/20 22:59ID:???perlを勉強する人が増えたって証拠かな?
0906名無しさん@お腹いっぱい。
02/02/20 23:15ID:???レス読み流してない?>>873周辺とか。
0907名無しさん@お腹いっぱい。
02/02/20 23:19ID:???0908名無しさん@お腹いっぱい。
02/02/21 00:15ID:???同時に3つのファイルをオープンする場合は,先にロックしてからまとめてオープンする(つまりロック→ファイル1オープン→ファイル2オープン→ファイル3オープン→アンロック)のと,それぞれのオープン直前に専用のロックをするのとどちらがいいのでしょう?
ただし,それぞれ別作業でオープンする場合もあります。
0909名無しさん@お腹いっぱい。
02/02/21 00:17ID:???俺はプログラムごとにエクスクルーシブロックかけるが(ダメダメ)。
0910名無しさん@お腹いっぱい。
02/02/21 00:51ID:???環境やどんなプログラムなのかわからない以上、状況によるとしか言えない。
0911飲み活要員
02/02/21 02:35ID:h7QujQlwhttp://www.lodestar.nu/niki/index.cgi
中途半端なWikiEngineみたいな感じだけど
・一応認証がある
・文法がHNS下位互換
・単語をページごとのリンクに変換できる。
・逆リンク
・段落ごとにリンクをはれる
・ブラウザ上からハイパーテキストを編集するツール
という特徴がある。
こーいうツールの必要性があるものかどうか、ふと確認してみたくなった。
どうよ?意見キボンヌ。
0912名無しさん@お腹いっぱい。
02/02/21 02:37ID:???Wiki* に多大な影響を受けている。 Wiki* とは不特定多数の人々がウェブを編集できる仕組み。ハイパーリンクが気持ちいい。Wikiとnikiの違いは
コマンド体系(nikiはHNS下位互換)
編集ポリシー
普及度
完成度(汗
などが挙げられる。
次世代NikiNikiWeb
悪いところは反省し。他のWikiEngineのよいところを参考に
oldtype
ver 0.01-beta6のソース?と使い方
性格
基本的に自動リンク用語集。たまにハイパードキュメント作成ツール。日記にもなるかも。
Wiki* 方面はみんなが目指しているので、NikiNikiはハイパードキュメント作成ツール方面でひとつ
でも Wiki* 的な機能もありで。
既知のバグ
LINKのURL判定が甘い
いろいろ
リンク
http://tiki.is.os-omicron.org/?c=v&p=WelcomeVisitors Omicron
http://isweb21.infoseek.co.jp/computer/h_yanai/html/WelcomeVisitors.html ese-nikki
http://hpcgi1.nifty.com/~k_ogata/diary/diary.rb diary.rb
http://todo.org/
0913名無しさん@お腹いっぱい。
02/02/21 03:09ID:???私的には大変興味アリ。
カテゴリつくりたい時なんかにも役立つ?
派生して色々な用途に使えそうなので良いのでは。
0914飲み活要員
02/02/21 03:10ID:h7QujQlwしまた、ここはPerlの質問を受け付ける擦れだったのか。
間違いた。スマソ
0915名無しさん@お腹いっぱい。
02/02/21 03:24ID:???おもしろいね。いろんなことに使えそう。
上の方にある「一覧」とか選ぶとエラー出るのは仕様?
0916名無しさん@お腹いっぱい。
02/02/21 03:44ID:???実は煮たようなものを作ろうとしていたりします。
0917名無しさん@お腹いっぱい。
02/02/21 09:35ID:???0918さんこうすれ?
02/02/21 09:48ID:???http://pc.2ch.net/test/read.cgi/tech/1010317366/
0919名無しさん@お腹いっぱい。
02/02/21 14:16ID:???■■■■■■■■■■■■■■477まで読んだ■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
0920名無しさん@お腹いっぱい。
02/02/21 19:32ID:9QK6Cxc7$loginstr =~ s/<\/DIV>\n="$indexstr";
では出来ないのでしょうか?
正しい表現が分らず困惑しとります。
0921名無しさん@お腹いっぱい。
02/02/21 19:36ID:???0923迷える920
02/02/21 20:39ID:???$indexin =~ s/$indexstr//;
ってできますか?
$indexinの中から、$indexstrと被る部分を削除したいんです。
中身日本語だからダメなのかしら?
$indexstrの中身の頭数行が、文字化けして表示されて、続いて
invalid [] range "7-0" in regexp at ./hp.pl line 72.
ていうアナウンスがあります。
お願いとどきますように。
0924名無しさん@お腹いっぱい。
02/02/21 20:43ID:???変数$indexstr内が正規表現の場合、展開される。
$i = '.*';
s/$i//; #<- s/.*//;
0925名無しさん@お腹いっぱい。
02/02/21 20:45ID:aeAe/JtXCGIはEUC-jpが基本。
0926名無しさん@お腹いっぱい。
02/02/21 20:47ID:???はぁ?
0927迷える920
02/02/21 20:55ID:???で、文字コードに関してはよく分らなかったので、
取り敢ずやってしまえって試しにやってみたら、うまくいった。
で、それじゃぁって、つくりたいプログラムを書いてたら
920,923の質問にはまったと。
>>924
正規表現ではなく文字列なんです。
で、文字列だとすると、
>>925
文字コードが関ってくるんでしょうか?
0928名無しさん@お腹いっぱい。
02/02/21 21:13ID:+rGDE/uDhttp://www.din.or.jp/~ohzaki/perl.htm#JP_EUC_JP
参考になればよいが。関係なかったらスマソ
0929名無しさん@お腹いっぱい。
02/02/21 21:14ID:+rGDE/uD09308484
02/02/21 21:36ID:39ejQiBa韓国でも翻訳して発売されるらしい。
http://www.puchiwara.com/hacking/
うにゅ。
0931名無しさん@お腹いっぱい。
02/02/21 21:37ID:???みんながっかりしてたよ。
0932名無しさん@お腹いっぱい。
02/02/21 21:44ID:xFoRv15aそのままeucでhtmlを出力してるんですが、
エンコード自動選択でsjisになってしまいます。
metaタグでちゃんと宣言してるんですけど。
なんか他にすべきことありますか?
0933932
02/02/21 21:46ID:xFoRv15a掲示板CGIを関連ファイル全部EUCで作って...です。
0934名無しさん@お腹いっぱい。
02/02/21 21:47ID:???うちで見るとこんな感じ
930 名前:8484 投稿日:2002/02/21(木) 21:36 ID:39ejQiBa
どんなにスゴイんだ?
韓国でも翻訳して発売されるらしい。
http://www.puchiwara.com/hacking/ [ブラクラ]
うにゅ。
0935名無しさん@お腹いっぱい。
02/02/21 22:41ID:???ttp://tohoho.wakusei.ne.jp/wwwxx005.htm
ここが参考になるかと。
でもいろんなブラウザで試しておかしくなるなら、metaタグか、CGIの出力も疑うべきです。
0936名無しさん@お腹いっぱい。
02/02/21 22:58ID:???>>925のいうように、スクリプトもデータもEUCにしときましょう。
ttp://tohoho.wakusei.ne.jp/wwwperl1.htm#Kanji
0937名無しさん@お腹いっぱい。
02/02/22 00:18ID:Ednlkjpe何とか分割して処理できないでしょうか?読み込んだ後は単に文字列検索したいだけなんですけど・・・・
0938名無しさん@お腹いっぱい。
02/02/22 00:20ID:???>textfileを読み込んで処理しようとすると
どういう状態?
0939名無しさん@お腹いっぱい。
02/02/22 00:29ID:???興味あるな。
どんなデータ?
繰り返し同じものが出てくる場合はKeyにして別DBにする、っていう
リレーショナル的な分割しかないと思うけどね。
0940937
02/02/22 00:45ID:Ednlkjpe遺伝子の配列データです。その中から特定の配列を検索して抽出するスクリプトを
書きたいのです。無理かな。。。
単純にfileをopenして配列変数にぶちこんで検索をかけ・・・を繰り返しているんですが
途中で止まってしまいます(当たり前か)。
0941名無しさん@お腹いっぱい。
02/02/22 00:45ID:???readで何バイトかごとに読めば?
0942名無しさん@お腹いっぱい。
02/02/22 00:47ID:???Cで書くべきだと思うよ。
0943937
02/02/22 00:52ID:Ednlkjpeありがとうございます。さっそくやってみます。
0944名無しさん@お腹いっぱい。
02/02/22 01:22ID:???print "Content-Type: text/html; charset=EUC-JP\r\n\r\n";
0945名無しさん@お腹いっぱい。
02/02/22 01:31ID:???そんな大きな規模なら別の言語で最適化しつつやっても3日ぐらいかかるのが普通じゃないの?
0946名無しさん@お腹いっぱい。
02/02/22 01:38ID:???って必要あるんですか?よく意味が分かりません。
グーグルで調べようにも""囲みでもヒットできないので困ります。
0947名無しさん@お腹いっぱい。
02/02/22 01:46ID:???よく知らんのだけど、bioperlって使えないのかな?
0948名無しさん@お腹いっぱい。
02/02/22 01:54ID:???foreach(1..5) {
print "$_:";
sleep 1;
}
$|=1;
foreach(1..5) {
print "$_:";
sleep 1;
}
ってやってみ。
0949名無しさん@お腹いっぱい。
02/02/22 02:02ID:???$| の説明はperlvarに載ってる。
ぐぐーるする前に手元のperlマニュアル読もう。
0950937
02/02/22 02:05ID:Ednlkjpeどうやらうまくいったようです!!
ありがとうございました。
0951名無しさん@お腹いっぱい。
02/02/22 04:49ID:???0952_gunzip
02/02/22 08:24ID:???http://bioperl.org/
bioperlのBio::Tools::Blast, StandAloneBlast辺りのモジュールを使って
BLAST, FASTA辺りの吐くサーチ結果をパースするのが一番簡単&&高速だと思うな。
$in = new Bio::Seq(-id=>"test query", -seq=>"GAAG");
$blast_report = $factory->blastall($in);
詳しくは付属のドキュメント参照ね。
0953名無しさん@お腹いっぱい。
02/02/22 18:07ID:???0954名無しさん@お腹いっぱい。
02/02/23 11:46ID:???レス数が950を超えています。1000を超えると書き込みができなくなります。