Perlについての質問箱 ..
21:デフォルトの名無しさん
08/09/24 10:13:37
>>19
<q cite="URLリンク(www.kt.rim.or.jp)">
シンボルテーブルの別の使い方は、“定数”スカラーを生成するためのものです。
*PI = \3.14159265358979;
この後、$PIを変更することはできません。
</q>
#!/usr/bin/perl -w
use strict;
use constant FOO => 'foo!';
our $BAR; *BAR = \'bar!';
print "${\FOO}$BAR\n", eval { $BAR = 'bar?' } || $@;
__END__
22:デフォルトの名無しさん
08/09/24 10:30:46
>>21
>>16 からの話の流れを読むと、
列挙型が欲しくて enum (>>17-18) を使ったけれど、enum の提供する定数はサブルーチンベースなのでパターン内に展開できない(>>19)。
それに対し >>20 が控え目に打開案を示した、という流れ。
シンボルテーブルベースの列挙型を新たに実装する手もあるし、
Readonly.pm を使う手もあるけど、
変にこだわりさえしなきゃ >>19 の通りハッシュで済む話だね。
23:デフォルトの名無しさん
08/09/26 06:39:52
スレリンク(operate板:210番)
perlで書くとこうなる
24:デフォルトの名無しさん
08/09/26 11:14:17
Perlを勉強してやる!
25:デフォルトの名無しさん
08/09/26 14:32:07
>>23
read.cgiはCで書かれてるつーの。
26:デフォルトの名無しさん
08/09/26 15:14:43
>>24
つ、通報しま
27:デフォルトの名無しさん
08/09/26 15:42:10
>>23みたいに、内容の違うpageを自分の妄想と結びつけてソースだと言い張る
頭がおかしい人間がこの掲示板には多いよね。
>>23のリンク先は、「cでperlみたいに正規表現を使いたいんだけどどうすりゃ良いの?」
というひろゆきの質問スレなのに、それがわからない。
煽りでなしに、病院で診察を受けた方が良い。
28:デフォルトの名無しさん
08/09/26 15:54:38
自分で掲示板作って
自分でそこで質問する、って
最強だよな。
29:デフォルトの名無しさん
08/09/27 08:14:06
do{last}while(1)
なぜこれがエラーになってしまうのでしょう?
do{last}for(1)
これはおkなのに
30:デフォルトの名無しさん
08/09/27 10:17:16
文字列がどれだけ合っているかを判別するにはどのようにしたらよいでしょうか?
以下のように
-------------
(比較元) 我が輩は猫である。
我が輩は人である。 -> 90% ほど合致。
我輩は猫である。 -> 90% ほど合致。
猫である我が輩は。 -> 5% ほど合致。
-------------
ように算出できないでしょうか?
31:デフォルトの名無しさん
08/09/27 18:27:16
URLリンク(www.aoky.net)
「そしてもちろん、Perlにはそのほかにもたくさんデザイン上の
奇妙なところがある。たとえば「コンテキスト」を見るといい。そ
れはラリーがシェルスクリプトからコピーしたN変数ネームス
ペースやシジルによるデリファレンスのようなおかしな決断の
ぞっとする副産物だ。Perlでは、すべてのオペレータ、すべて
の関数、すべての操作が、その「コンテキスト」に従い、6つの
うちのランダムな1つの仕方で振る舞う。与えられたコンテキス
トにおいて特定の操作がどう振る舞うかを支配するルールや
ヒューリスティクスというのは存在しない。あなたは単にすべて
暗記しておくしかないのだ。
例がほしい? スカラーコンテキストでハッシュにアクセスすると
、分子が割り当てられたキーの数、分母がバケットの数となっ
ている分数を内容とする文字列が得られる。クジラのはらわた
だ。そう言ったでしょ。」
32:デフォルトの名無しさん
08/09/27 18:28:54
>>31
を読んで、「ほんとかよ?」と思ったので実験してみた。
my $a;
my %b;
%b=qw (a b
c d
e f
g h);
$a=%b;
print "$a\n";
実行結果。
4/8
本当だ!
この仕様考えたヤツはいったい何が不満だったのか?
33:デフォルトの名無しさん
08/09/27 18:50:31
>>30
Levenshtein距離とか
34:デフォルトの名無しさん
08/09/27 19:33:23
>>32
Javaで言えばただのtoStringじゃん
35:デフォルトの名無しさん
08/09/27 19:38:22
ついでに言えばperlのコンテキストもOOPの演算子オーバロードも(使う方からすれば)似たようなもの
36:デフォルトの名無しさん
08/09/27 20:54:49
perlのかっちょええエディタを紹介して。
コードの自動補完とかできるやつ。
37: ◆TWARamEjuA
08/09/27 22:49:21 BE:654023-2BP(7089)
(・o・)ポカーン
38:デフォルトの名無しさん
08/09/27 23:04:10
>>29
do ~ while 構文(及び while 修飾子)で last したければ
% perl -le '{ do{last} while (1) } ;'
みたくブロックで囲む必要がある。
詳しくは、 perlsyn の while の項を読め。
ちなみに next の時は、
% perl -le 'do{{next}} while (1) ;'
B::Deparse で syntax OK になる分タチ悪がね。
% perl -MO=Deparse -le 'do{last}while( 1 ) ; '
(略)
-e syntax OK
つか do ~ while 構文なんて使うなよ…
39:デフォルトの名無しさん
08/09/27 23:15:21
「い」が抜けたorz...
40:デフォルトの名無しさん
08/09/27 23:27:27
「でもいい」も抜けてたな。
酒飲んで書き込むもんじゃねえなあ
41:デフォルトの名無しさん
08/09/28 00:26:39
>>29
while(1)・・・でいいのをわざわざdo・・・while(1)で書いてるくらいだから、
よっぽど、do-while文が好きだったんだな。どの言語の影響だ?
Perlのdo-while/untilループは通常のループ制御が使えんから、使い物にならんよ。
>>38みたく、みっともないことになる。
42:デフォルトの名無しさん
08/09/28 00:35:15
Exporterを使って全関数をExportするにはどうしたら良いでしょうか?
@Exportに全関数名を入れるのは骨が折れるのでこの方法は避けたいです。
43:デフォルトの名無しさん
08/09/28 01:25:25
正規表現で.+と.+?の違いはなんでしょうか?
前者は任意の文字が1個以上続くというのはわかるのですが、後者がわかりません。
よろしくお願いします。
44:デフォルトの名無しさん
08/09/28 01:59:56
マンドクセー
最長と最短
45:デフォルトの名無しさん
08/09/28 02:26:47
>>42
Perlは関数とか実行時に動的に割付可能な言語だから、いちいち名前を列挙するのが当然と思われ。
ま、俺もPerlあんま詳しくないんだけど、自動で全部というのはプラクティスとしてありえないと思う。
強引にやるなら、コンパイル時にシンボルテーブルのコードっぽいやつをとりあえず
@EXPORTに突っ込むことが考えられるが、こんなことやってるのいままでPerl関係のコードで見たことがない。
見たことがないということは、やらない方がいいということ。
@EXPORT = map {*{$_}{NAME}] grep {*{$_}{CODE}} values %PACKAGENAME::
PBPにサブルーチンにEXPORT属性を設定する方法が紹介されているので、ここらあたりで
妥協できないか。
46:デフォルトの名無しさん
08/09/28 08:59:51
他のモジュールと関数が衝突すると痛いので、
オブジェクト指向化推奨されてる。
EXPORTするのは定数ぐらいにした方がいい。
47:デフォルトの名無しさん
08/09/28 09:47:27
大量に定数定義するモジュールで45みたいなことやったわ。
全部大文字のシンボルを@EXPORT_OKに追加するとかそんなの。
いちいち列挙するのだるかったのでつい魔が差した
48:デフォルトの名無しさん
08/09/28 21:15:00
perlはそのうちこうなる↓
スレリンク(news板)
49:デフォルトの名無しさん
08/09/29 01:05:31
>>45
やはり全部書くべきですか。ただ面倒というだけで問題は無いのでひとまずはそれで行こうと思います。
PBPというのはPerl Best Practicesですね。まだ読んだことが無いので手を出してみます。
>>46
薄学のためオブジェクト指向についてまだよく分かってないのですが、
確かに全関数をエクスポートするくらいならオブジェクト指向で組めばよい気がしてきました。
まだ関数名の衝突という事態には当たったことはありませんが、
オブジェクト指向で組むことも考えてみようと思います。
50:デフォルトの名無しさん
08/09/29 08:03:59
ときどき開発者の中には、特に Perl のプログラマーは、
PHPを「劣った」言語だと考える人がいます。
それについてはどう思いますか。
51:デフォルトの名無しさん
08/09/29 11:08:45
PHPっつたって、バージョン違えば別言語なんだからバージョン言ってもらわないと。
5.2と5.3のマイナーバージョン違いでさえ大幅に違うんだからさ。
52:デフォルトの名無しさん
08/09/29 11:40:15
劣ったとは思わんがPerlや他の言語を元にWebに特化したわりには冗長だな
そしてプログラミングセンス的に劣った奴でも簡単に扱えるのは良いんだか悪いんだか・・・
Perl以上に出来る奴と出来ない奴の差が激しいかもね
無駄に関数多いけど新しいものをどんどん取り入れようとしてる姿勢は良いと思う
が、ますます冗長になっていく・・・
某社ではプログラマにはPHPは使わせてなかった
あんなのはHTMLのコーダーやデザイナーが埋め込みで使うスクリプトだ、と
極論ではあるがそういう使われ方が結構多いんじゃないか?
53:デフォルトの名無しさん
08/09/29 11:54:26
PHPは成長中の言語だから、一概に言えない。
ただ、Perlと同じく継ぎ接ぎの酷さが見えてきた感じはする。
54:デフォルトの名無しさん
08/09/29 22:26:06
ある程度以上メジャーになってしまうと、あとから大規模に言語仕様を弄るのは大変だからな。
同様の問題は、PerlやPHPに限らずRuby,PythonとかC/C++とかも多かれ少なかれ抱えてると思う。
55:デフォルトの名無しさん
08/09/30 07:11:06
おまいら、eclipse + padwalker + epic
使ってる?
56:デフォルトの名無しさん
08/09/30 08:21:44
URLリンク(builder.japan.zdnet.com)
ここみたら、perlのエディターが
Perl
* EPIC
* PerlBuilder
* PerlComposer
* Perl Editor
* Perl Express
* Open Perl IDE
* OptiPerl
* Zeus
こんなに紹介されてるんだけど、どれが最強?
57:デフォルトの名無しさん
08/09/30 08:51:27
1級perl検定
以下のコードのバグを見つけよ
(制限時間15秒)
---------------------------------------
for ( my $a=1; $a<=10; $a++ ) {
print "$a\n" if $a=3;
}
58:デフォルトの名無しさん
08/09/30 09:01:22
URLリンク(www.donzoko.net)
ここに書いてあるんだが、ひょっとして
モジュール同士で相性が悪いってことはあるのか?
もしそれが本当だとしたら、モジュールなんでもかんでも
いれたり使ったりすると原因不明のバグに悩まされることにも
つながりかねないのか?
59:デフォルトの名無しさん
08/09/30 10:08:24
>>57
if $a==3 かな?
15秒以内でみつけたから、俺、上級?
60:デフォルトの名無しさん
08/09/30 13:06:08
配列の任意の要素を削除するにはどうすればいいのでしょうか?
@arr = (1, 2, 3, 4, 5);
$del_element = 3;
($del_elementで指定した要素を削除する処理)
print "@arr"; #=> 1 2 3 5
61:デフォルトの名無しさん
08/09/30 13:08:48
>>60
splice
62:デフォルトの名無しさん
08/09/30 13:21:49
>>61
d
できました
63:デフォルトの名無しさん
08/09/30 13:41:24
Perl::Critic
ってなんなのかなぁ?
64:デフォルトの名無しさん
08/09/30 13:48:14
>>58
SwitchとAcme::Comment がソースフィルタタイプのモジュールだからだろ?
ソースフィルタタイプなんて一個でも気持悪い(元のコードを改変すんだぜ?)のに
モジュールの二段重ねとか、そりゃ危険は高かろう。
つか、フィルタタイプだろうとなかろうと、cpan.searchでフィックスしてない
バグくらいは閲覧してから入れるか否かの判断しろよ、、、
65:デフォルトの名無しさん
08/09/30 14:09:56
URLリンク(blog.nqou.net)
ここに書いてある
perltidy
ってのをいれようと思ったんだが、
ActiveperlのPPMには入っていないようだ。
しかし、Acme::tidyというのが代わりに検索で
出てくるんだが、これでも同じなのか?
66:デフォルトの名無しさん
08/09/30 14:14:28
URLリンク(googlewhacks.blogspot.com)
いったいこれはなんだー
67:デフォルトの名無しさん
08/09/30 14:29:04
>>65
自己解決した。
検索のときにハイフンを入れてなかった。
ハイフンいれたら検索で出てきた。
68:デフォルトの名無しさん
08/09/30 15:19:21
perlcritic
使い方がいまいちよくわかんね。
69:デフォルトの名無しさん
08/09/30 19:15:02
eclipse + padwalker + epic
でperlなのだが、
prin
って打ったときに、
print
printf
って候補を出してくれる、っていうのはできないの?
70:デフォルトの名無しさん
08/09/30 19:34:32
RSS1.0、RSS2.0、Atom0.3のRSSを生成したいのですが、
オススメのモジュールなどありますでしょうか?
できればインストールが簡単(*.pmコピるだけとか)で扱いやすいので。
71:デフォルトの名無しさん
08/09/30 22:31:04
UNIXタイムスタンプ→グレゴリオ歴に変換するにはどうすればいいのでしょうか。
localtime((stat 'hoge.png')[9]) としても、どうも変な変換になっているようなのです。
72:デフォルトの名無しさん
08/10/01 21:08:27
CPANモジュールについてはここでいいですか?
Text::MeCabの最新版
URLリンク(search.cpan.org)
がどーしてもMacOS Xにインストールできません。
Makefileの-arch ppcを削ったらmakeできましたが、
それをmake installしてもまともな結果になりません。
どなたか御存知ですか?
73:デフォルトの名無しさん
08/10/01 21:15:48
>>71
scalar localtime((stat 'hoge.png')[9]) にすると希望どおりだとかいうオチでは。
>>72
前にCPAN on OS X で困ってる人が来ていろいろやりとりしてたら
「MacPortsで解決しました!」という出来事があったのでこわいのです。
74:デフォルトの名無しさん
08/10/01 22:02:08
>>73
> scalar localtime((stat 'hoge.png')[9]) にすると希望どおりだとかいうオチでは。
マニュアルを見ると希望通りに出来ると云うオチでしょう。
75:デフォルトの名無しさん
08/10/01 23:14:32
perlソースコードの1行目のshebangを置換させるようなプログラムを
以下みたいなone-linerで書きたいのですが
perl -pi.bak -e 's/#!.*/#!c:\\perl\\bin\\perl/ if($. == 1)' *.pl
$. の行数が、2つめのソース以降も値を引き継いでしまいます
なにかうまい方法はないでしょうか
76:デフォルトの名無しさん
08/10/02 01:03:19
>>75
組み込み関数の eof を調べてみたらいいと思うよ。
77:デフォルトの名無しさん
08/10/02 01:19:21
>>76
ありがとうございます
eofは使ったことがありませんでした
試してみます
78:デフォルトの名無しさん
08/10/02 07:41:10
普通に丸呑みモードでいいやん?
perl -i.bak -0777pe 's/\A#!.*?\n/hoge\n/ ' *pl
79:デフォルトの名無しさん
08/10/03 18:05:27
cgi掲示板なのですが、ログインすると文字化けしてまして、
コードがISO、西ヨーロッパなどとなってしまうのです。
そこで、headerの部分にcharset=を含めようとしてるのですが、
何度やっても、500エラーになってしまいます。
sub header {
print "Content-type: text/html\n\n";
print "<!--//HEAD//-->\n";
print "<html><head>\n";
print "<META http-equiv="Content-type" content="text/html; charset=Shift_JIS">\n"
print "<title>CGI Control Panel</title>\n";
print "<META http-equiv="Content-type" content="text/html; charset=Shift_JIS">\n"
↑
を追加して日本語になるように、お願い致します。
80:デフォルトの名無しさん
08/10/03 18:26:15
>79
WebProg板へ行った方が的確な回答が得られるんじゃないかな。
で、" " の中で、更に " " を使うな。
人間ならともかく、コンピュータはどこまでが " " の範囲なのか理解できない。
81:デフォルトの名無しさん
08/10/03 18:27:33
すでにWebProgにマルチしてるよコイツ
82:デフォルトの名無しさん
08/10/03 22:09:29
質問です。ActivePerlをインストールしコマンドラインでppm install DBD::mysqlを実行したのですが
ppm install failed: Can't find any package that provides DBD::mysql
というエラーメッセージが出ます
DBD::mysqlはリポジトリから無くなってるのでしょうか?
83:デフォルトの名無しさん
08/10/03 22:32:19
追記:PERLバージョン5.10.0です
新バージョンに対応してるDBD::mysqlがないということでしょうか
84:デフォルトの名無しさん
08/10/03 23:29:38
Active Perl 5.8.8 では ppm install DBD:mysql できるぞ。
無理して 5.10.0 使わんでもいいんじゃない?
85:デフォルトの名無しさん
08/10/03 23:47:26
>>82
cpan使えば?
86:デフォルトの名無しさん
08/10/04 12:29:01
スレリンク(prog板:60番)
これはどういうことだ
87:デフォルトの名無しさん
08/10/04 12:50:24
VB、Java、最近だとruby、このあたりは、プログラマに向いてない
人間の比率が高いから、採用の目安としては使えない、ってことじゃないかな。
昔のコボラみたいに融通が利かない人間を採ってもあとあと困るし。
88:デフォルトの名無しさん
08/10/04 17:40:03
Mail::Sendmail
これの正しい発音は、
メール コロンコロン センドメール
で合ってる?
89:デフォルトの名無しさん
08/10/04 18:39:13
滅入る 殺殺 千度滅入る
90:デフォルトの名無しさん
08/10/04 19:00:16
Acmeはちゃんとアクメって読めよ
91:デフォルトの名無しさん
08/10/04 19:27:09
ファイルを読み込むとき、ファイル名を指定する。
log.txt
ここで質問。ファイル名が連番になっていても 順に読めるのでしょうか?
log001.txt
log002.txt
open(IN, "log.txt");
print while (<IN>);
close(IN);
log003.txt
92:デフォルトの名無しさん
08/10/04 19:34:12
はあ
93:デフォルトの名無しさん
08/10/04 20:34:36
日本語でおk
94:デフォルトの名無しさん
08/10/04 20:47:45
globれ
95:デフォルトの名無しさん
08/10/04 22:27:56
だから
open(IN, "log001.txt");
print while (<IN>);
close(IN);
open(IN, "log002.txt");
print while (<IN>);
close(IN);
open(IN, "log.003txt");
print while (<IN>);
close(IN);
って書くと面倒でしょう?
ファイル名が連番になってて 順に読めないのかどうか?が知りたいのですよ。
96:デフォルトの名無しさん
08/10/04 22:30:44
200個のファイルを読み込みたいのだよ。
200個分のファイルを読むように ソースコードを書くのが 手間がかかりすぎるやん?
2000行ぐらい書くことになるかもしれない。
だから、 ファイル名を連番にして、
200行ぐらいの短くて分かりやすいコードは書けないのでしょうか?
97:デフォルトの名無しさん
08/10/04 22:33:04
>>91
my $a;
$a="log001";
print "$a".".txt\n";
$a++;
print "$a".".txt\n";
これちょっと実行して結果見てみ。
98:デフォルトの名無しさん
08/10/04 22:36:07
>>94
なかった
99:デフォルトの名無しさん
08/10/04 22:37:58
>>97
それ!それです。
マジ助かる。ありがとうございました!!
100:デフォルトの名無しさん
08/10/04 22:37:58
>>98
何がないんだよ
101:デフォルトの名無しさん
08/10/04 22:41:07
globでえーやん
102:デフォルトの名無しさん
08/10/04 23:02:00
助かるってことはループは使えるのかな。globもないらしいしよくわからない。
例によって $a は(ry ついでに "$var" って(ry
103:デフォルトの名無しさん
08/10/04 23:03:50
$varなんかどこに書いてあるんだよ
104:102
08/10/04 23:05:46
じゃあ元通りの "$a"
105:デフォルトの名無しさん
08/10/05 04:55:51
>87
改行の仕方がおかしいせいで別の意味に取れる
106:デフォルトの名無しさん
08/10/05 05:25:14
>>102
つかこの程度の発想が出来ないとプログラムセンス的になぁ・・・
107:デフォルトの名無しさん
08/10/05 13:03:55
かなり致命的だよな。
そこそこスジの良い人なら、仮にPerlが初めて触った言語でも
勉強3日目には卒業してるレベル。
108:デフォルトの名無しさん
08/10/05 17:14:19
オレと同期入社の女子社員は
>>95みたいなプログラムを本当に書いてた
109:デフォルトの名無しさん
08/10/06 10:24:45
質問者もひどいが回答者もひどいという話か
110:デフォルトの名無しさん
08/10/06 23:15:39
if文条件部の正規表現で、gオプションを付けているのをどこかで見たのですが、別に付けなくても
いいような気がするのですが、何か意味があるのでしょうか?
if ( /%[^%]*?%/g ) { ・・・ }
111:デフォルトの名無しさん
08/10/06 23:57:19
試してないけど、マッチ情報の取得とかで変わるんじゃない?
112:デフォルトの名無しさん
08/10/07 01:44:45
if じゃなくて while の条件式じゃないのかな。
113:デフォルトの名無しさん
08/10/07 11:38:43
言われてみれば確かに if で g を使うのは変だよな。while ならともかく。
たぶん、ついうっかりやってしまただけだろ。特に意味など無いと思うよ。
114:デフォルトの名無しさん
08/10/07 11:57:42
Windows、ActivePerl5.8.8 です。
data1.txtは、Shift-JISで改行は\x0D\x0Aです。
以下のコードを実行すると、data2.txtの改行が、\x0D\x0D\x0Aとなりますが、何故そうなるのでしょうか?
open IN, "<:raw", "data1.txt";
open OUT, ">:crlf", "data2.txt";
print OUT <IN>;
close IN;
close OUT;
115:デフォルトの名無しさん
08/10/07 12:46:41
久し振りにPerl/Tkをやったら、すっかり忘れている。
116:デフォルトの名無しさん
08/10/07 12:48:52
>>114
:crlf は、0x0A を出力する時に 0x0A → 0x0D, 0x0A という置換をする。
(入力時は、0x0D, 0x0A を 0x0A に置換する)
:raw は、何の変換もしない。
おそらく data1 が 0x0D, 0x0A なテキストで、これがそのまま無変換で読み込まれ、
出力する時に <0x0D> <0x0A> → <0x0D> <0x0D, 0x0A> と変換されている。
117:デフォルトの名無しさん
08/10/07 12:58:49
>>116
なるほど、そういうカラクリですか
サンクス
118:デフォルトの名無しさん
08/10/07 14:18:44
>>110-113
正規表現的にうっかりだろうけど、マッチがグローバルになる事を利用している場合もある。
マッチが保存された開始位置から始まり、(次のマッチの為に)開始位置を保存するようになる。
例.
perl -le '$_=q/012312345/; m/1/g; m/1/g; print join q/:/,$`,$&;'
0123:1
pos($_)= X; m/RE/g のように、マッチ開始位置を指定する手もある。
119:デフォルトの名無しさん
08/10/07 18:04:49
>>111-113
>>118
サンクス
可能性としては、単なるうっかりか、次のマッチのために使っていたということっすね
120:デフォルトの名無しさん
08/10/07 18:17:13
日本で一番Perlを操れる人は小飼弾氏ですか?
121:デフォルトの名無しさん
08/10/07 18:25:49
小飼ってまだ生きてるの?
122:デフォルトの名無しさん
08/10/07 18:38:21
URLリンク(www.yahoo.co.jp)
↑こんなURL投稿でサイト名を取得して(タイトル内の<title>Yahoo! JAPAN</title>)を表示させるにはどうしたら良いですか?
Yahoo! JAPAN
123:122
08/10/07 18:39:41
タイトルが無い場合はURL
124:デフォルトの名無しさん
08/10/07 18:46:44
>>120
ちがうだろ
125:デフォルトの名無しさん
08/10/07 18:52:55
>>122
支離滅裂
126:デフォルトの名無しさん
08/10/07 18:55:37
URLリンク(www.aimix.jp)
これを改造で良いのかな?
127:デフォルトの名無しさん
08/10/07 19:33:55
SLDやTLDを抽出するプログラムを書きたいのですが、
.co.jpがどうしても抽出できません。
誰か間違いを教えてくださると嬉しいです。
よろしくお願いします。
my $suuji;
$host = fff.co.jp;
if($host =~ /\.co\.jp$/){
$suuji = 10;
}else{
$suuji = 3333;
}
print $suuji;
128:デフォルトの名無しさん
08/10/07 19:42:29
$host = fff.co.jp;
print $host, "\n";
裸のワードはなんたらなので文字列ならなんとかかんとか
129:デフォルトの名無しさん
08/10/07 20:39:27
>>116を見て思ったのですが、"\n"="\x{0A}"ですか?
130:デフォルトの名無しさん
08/10/07 20:55:24
そうです
131:デフォルトの名無しさん
08/10/07 21:02:20
>>130
サンクス
一つ賢くなりました
132:デフォルトの名無しさん
08/10/07 21:29:48
>>122
scraper
133:デフォルトの名無しさん
08/10/08 12:43:37
CPANへの登録ってどういう基準?
便利でよくできてるものはどんどん登録された方がいいと思うけど、
これはえがいひとみたいのが、カスみたいのを登録しまくったら滅茶苦茶になるよね?
134:デフォルトの名無しさん
08/10/08 20:23:03
おまえでも登録できる。
単に出来が悪くて抹消というのは聞いたことがない。
Perl の人達は一般に、コードの主観的有用性に基いた恣意的な判断を嫌う。
規制の例としては、名前空間に関する暗黙のコンベンションを読み取れない子が時折出現してはかわいそうなことになっているくらいか。
135:デフォルトの名無しさん
08/10/08 21:34:31
packageとかperlってモジュール登録したバカな奴いたような気がする。
CPANテロ。
136:デフォルトの名無しさん
08/10/09 23:50:53
文字列が全角ひらがなと全角スペースと半角スペースのみで
構成されているかどうか調べる正規表現が分かりません。
先輩方。よろしくお願い致します。
137:デフォルトの名無しさん
08/10/10 00:13:44
始めましてこんばんわ。
最近までCGIのソースを見て作ってきたのですが飽きてきたので他のものに
触れたいと思っているのですが皆さんはperlでどのようなことをしていますか?
自分はソフトウェアかネットワークプログラミングをやろうと思っているのですが
(というかそのぐらいしか知らないです。)皆さんの意見を参考にもし面白そうなの
があればやってみようと思ってます。
ただCGや音楽、ゲームはなしの方向でお願いします。
138:デフォルトの名無しさん
08/10/10 00:22:17
まず日本語のお勉強をしましょうね。
139:デフォルトの名無しさん
08/10/10 01:36:24
始めましてこんばんわ。
最近までCGIのソースを見たり、書いたりしてきたのですが飽きてきてしまったので
他のものにも触れてみようかなと思っているのですが皆さんはperlでどのようなことをしていますか?
自分はソフトウェアかネットワークプログラミングをやりたいと思っているのですが
皆さんの話を参考にもし面白そうなのがあればそれらも検討しようと思っております。
ただCGや音楽、ゲームはなしの方向でお願いします。
こんな感じでよろしいですか?
140:デフォルトの名無しさん
08/10/10 06:06:59
日本語でおk
141:デフォルトの名無しさん
08/10/10 09:13:09
えぇ。いい加減もったいぶらず教えてください。
そんなに日本語変ですか。
142:デフォルトの名無しさん
08/10/10 09:30:14
「ソフトウェア」の意味がわかってないので変てこになっているのか?
143:デフォルトの名無しさん
08/10/10 10:00:42
何を始めたんだろうっていう疑問が、一行目でいきなり来るけどな。
144:デフォルトの名無しさん
08/10/10 10:08:06
>>141
ソフトウェアはソフトウェアプログラミングのことを言ってます。
>>143
そこは変換ミスなのでスルーしてください。
本当はその漢字が正しいと勘違いしていただけですが。
145:デフォルトの名無しさん
08/10/10 10:23:20
>>144
> ソフトウェアはソフトウェアプログラミングのことを言ってます。
じゃあ、「ソフトウェアプログラミング」の中の「ソフトウェア」の意味は?
146:デフォルトの名無しさん
08/10/10 10:47:54
>>145
アプリケーションソフトなどのことじゃないのですか?
147:デフォルトの名無しさん
08/10/10 11:00:01
アプリケーションソフトとは?
って話になるだろ・・・
148:デフォルトの名無しさん
08/10/10 11:09:22
>>147
そんなことを聞いてどうするつもりですか?
なぜあなたがそんなことを細かく聞いてくるのか自分には理解が出来ない
のですが?
ソフトウェアプログラミングのソフトウェアがアプリケーションソフト以外の
ものをさすならわかりますがそれで間違いないならこれ以上追及する意味が
ないと思うのですが?
149:デフォルトの名無しさん
08/10/10 11:16:22
ソフトウェアをやりたい
アプリケーションソフトをやりたい
ってどういうことやねんってことでしょ
150:デフォルトの名無しさん
08/10/10 11:29:51
じゃあ、インクリメンタルサーチ可能な全文検索システム作ってちょ。
151:デフォルトの名無しさん
08/10/10 11:33:45
たぶん
「デスクトップアプリケーションを作りたい」
では・・・
152:デフォルトの名無しさん
08/10/10 11:38:46
>>148
君がやりたい内容が理解できないから
掘り下げて聞いているのですよ。
ソフトウェアでもアプリケーションソフトでも、意味が広すぎる
153:デフォルトの名無しさん
08/10/10 11:47:51
自分が聞きたいのはソフトウェアプログラミングの内容ではなくて
皆さんがperlでどんなことをやってるかなのですが・・・?
154:デフォルトの名無しさん
08/10/10 11:58:13
いろいろ
155:デフォルトの名無しさん
08/10/10 12:01:47
オナヌー
156:デフォルトの名無しさん
08/10/10 12:08:17
>>153
「どんなこと」も広すぎるから、方向性を絞り込む為に「やりたいこと」を参考にしたいのだが
そのやりたいこともよくわからないので掘り下げてみた
エロ動画サンプルを自動巡回DLオススメ
157:デフォルトの名無しさん
08/10/10 12:19:58
あとはエロ画像の重複チェックとかかな。
md5ハッシュとファイルサイズを持っておいて、この2つでチェックすれば
まぁほぼ確実な精度で重複する画像が見つけられるだろう。
158:デフォルトの名無しさん
08/10/10 12:27:14
・エロ画像巡回収集、サムネイル生成、整理
・エロ動画巡回収集、解凍、整理
自分の場合はこんな感じ。いつも思うことだけどPerlの用途は幅広いね。
159:デフォルトの名無しさん
08/10/10 13:20:15
それPlaggerでできるよ!
160:デフォルトの名無しさん
08/10/10 13:38:48
エロは偉大だなw
161:デフォルトの名無しさん
08/10/10 14:00:04
Perlだと2ちゃんブラウザとかトリップ解析とか人工無脳とか作った
162:デフォルトの名無しさん
08/10/10 14:02:18
自宅でgoogleを作った
163:デフォルトの名無しさん
08/10/10 14:03:22
なんだそれは
164:デフォルトの名無しさん
08/10/10 14:43:01
実行環境のIPとSubnet Maskを取得する方法を
教えてください。
ifconfig/ipconfigで調べることはできるんですが、
ひょっとするとモジュールがあるかも、と思いました。
ググったら、Net::Netmaskモジュールを見つけたんですが、
これは違いました。
わかるような情報を
165:デフォルトの名無しさん
08/10/10 14:48:32
>>163
おっと、「自宅でgoogle」を作った。な。
ウェブブラウザのアクセス追跡やその他SBMや優秀なリンクリスト系ブログから
URLをかき集めてクロリングクロリング。ず〜っと16KB/secのバンド幅でかき集め
続けている。
166:デフォルトの名無しさん
08/10/10 14:52:39
>>164
つNet::Interface
167:デフォルトの名無しさん
08/10/10 14:53:24
>>164
ええと…… 言周 言周 言周 ……Net::Interfaceはちがう?
168:デフォルトの名無しさん
08/10/10 16:38:13
Perol
169:デフォルトの名無しさん
08/10/10 16:47:44
オマエらこういう質問に無視しないでマジメに答えてやれよ。
>>136
^(?:\x82[\x9F-\xF1]|\x81[\x4A\x4B\x54\x55]|\x20|\x81\x40)+$
これでどうだろうか?
でも、スペースがあると何かと厄介だよな。
フォームとかで使う事を考えると、スペース削除して目的達成できるなら
事前に半角全角スペース全削除して平仮名だけチェックするのがイイと思う。
170:デフォルトの名無しさん
08/10/10 16:57:45
>>169
> オマエらこういう質問に無視しないでマジメに答えてやれよ。
自分は人々より高い位置にいるという自己認識を露わにしながら
出現する人ってなんなの?
171:デフォルトの名無しさん
08/10/10 17:19:30
「マジメに答えてやれよ」ってのは、皆答えることができるってのが前提だから、
別に自分を「人々より高い位置にいる」とは認識してないのでは。
誰も答え「られない」が、俺だけは答え「られる」って構図を出してきたんなら、
まぁ、確かにそういう気位を感じなくもないが。
172:デフォルトの名無しさん
08/10/10 17:25:33
本当に質問に答える気なら、まず最初に「エンコーディングは?」って
質問返ししなきゃならんし、面倒臭いしスルーしてた。
文字コードSJIS決めつけで答えてるし、どっかのページのコピペでしょ。
もしかしたら、質問者本人の煽りレスかもね。
173:デフォルトの名無しさん
08/10/10 17:26:17
>>169
司令官が出現しました!!
174:デフォルトの名無しさん
08/10/10 17:51:42
unicode文字列にデコードされている前提で、
/^[ \p{Hiragana}]+$/
でいいんじゃね?
'['のあとの2文字は半角スペースと全角スペース。
175:デフォルトの名無しさん
08/10/10 20:27:16
プログラミングPerlって2000年発行でちょっと古い気がするのですが、それでも買いですか?
176:デフォルトの名無しさん
08/10/10 20:55:28
即答かコード一行書いて終わりみたいな質問なら答えやすいよね。
>>175
買って損はない
177:デフォルトの名無しさん
08/10/10 20:58:11
>>176
サンクス
買ってみます
178:デフォルトの名無しさん
08/10/10 21:16:28
>>177
バージョン5.6がベースだからunicodeとスレッド関係は要注意。
この2つは5.8以降で互換性が無くなってるからあくまで参考に留めるべし。
5.8以降のunicodeの扱いはwebで検索した方が良い。
179:デフォルトの名無しさん
08/10/10 21:27:50
>>178
了解しました
180:デフォルトの名無しさん
08/10/10 21:50:48
175の人は「perldocがあるからラクダ要らない」説もあることを頭に入れとくといいかもしれないよ。
自分は2002年にラクダ和訳が出てすぐ「欲しかったから」買ったんだけど
純粋に実用面だけを考えたら、他人に「買って損はない」とまでは言えないな。
181:デフォルトの名無しさん
08/10/11 00:07:45
2ちゃんねるがあればマニュアル本を買う必要は無いだろ
182:デフォルトの名無しさん
08/10/11 01:53:16
>>180のオススメのPerlの本は何?
183:デフォルトの名無しさん
08/10/11 02:01:32
本は要らない
184:デフォルトの名無しさん
08/10/11 09:06:11
プログラミングPerlよりPerlクックブックの方が役に立つと思う。
185:デフォルトの名無しさん
08/10/11 09:17:50
今プログラミングPerl久しぶりに開いてみたら・・・
訳出作業に使用した作業環境
IBM ThinkPad 535(Pen120MHz 40MB HDD2GB)
FreeBSD2.2.1+PAO Mule2.3
186:デフォルトの名無しさん
08/10/11 09:23:21
元々料理本はラクダの一部じゃん。
だから、説明に欠落がある。
187:デフォルトの名無しさん
08/10/11 15:46:11
>>137
ソフトウェアってのはハードウエアではないあらゆるものを指すわけで、あなたが飽きてきたっていう
「CGIプログラム」だってソフトウエアです。家電のプリント基板に入っている組み込み系もソフト
ウエアですし。だからみんな「ソフトウエアがやりたい」って、何がやりたいの? と訊いてる訳です。
…てなことは説明しなくてもわかって欲しいのですが。
Windows上で動くGUIなプログラムのことなんですかね…。perlでも書けなくもないですね。
でも結局WinAPIをいじるから、そっちの知識がないと書けないですし。VBやVCという言語がある
ってことくらいは知っててもいいと思います。なでしこってのもあるよ。
そもそも、プログラムの形態とか言語についてあれこれいう前に、作ったプログラムで何がやりたいか、
を具体的にイメージできないと、モチベーションを維持するのは難しいと思います。私の経験上
そうです。何か作りたいものがあって取り組むのが一番上達が早いです。
私はCGI屋なんで、その立場から言わせてもらうと、CGIだっていつまでも奥が深くて、飽きるなんて
ことはないですよ。できることはたくさんあるし、やりたいことも尽きません。
188:デフォルトの名無しさん
08/10/11 16:29:55
ネタに亀レス(w
189:デフォルトの名無しさん
08/10/11 17:31:11
なんだこの珍問答
190:デフォルトの名無しさん
08/10/11 17:48:10
どうかおめこ干しを
191:デフォルトの名無しさん
08/10/12 22:15:11
>>187
ということはプログラムのほとんど、またはすべてはソフトウェア
プログラミングということでしょうか?もしそうなら皆さんごめんなさい。
確かにそれなら自分の質問に答える前につっこまれるのが普通だと思います。
それとCGIですごい大きいものを作ったわけでもないのに飽きたと言ったのは偉そうに
言い過ぎました。すみません。
自分が言っているソフトウェアプログラミングはメモ帳やエクセルなどの
デスクトップアプリケーションのことです。
自分がまだプログラムを始めたての頃、作りたかったのがCGIというかチャットや掲示板だったんです。
プログラムを始めた時は頭が今よりも悪く(今もよくないですが)学校が忙しいのもありましたが
意味不明なことをしていて結局CGIに取り掛かるのに1年かかってしまいました。
ただ作ってみたら結構簡単だし同じような処理が多いので楽しいよりめんどくさい
の気持ちが強くなってしまい他の作ってみたいなという気持ちが出てきたので
前の質問に至りました。
ただ自分はパソコン歴自体長くなく知らないことも多いので
もしかしたらすごい楽しいCGIのプログラミングがあるのかもしれませんね。
検索サイトやデータベースはあまり興味ないですが。
長々とすみません。
192:デフォルトの名無しさん
08/10/12 22:25:09
アルファがベータをカッパらったらイプシロンした
まで読んだ。
193:デフォルトの名無しさん
08/10/13 06:14:15
>>191
まず周囲の空気を読む事から覚えろw
194:デフォルトの名無しさん
08/10/13 08:27:19
>191
用語や用法のミスはあまり問題ではない。
まずは相手に伝える努力をしろよ。
195:デフォルトの名無しさん
08/10/13 09:33:28
>>194
> 用語や用法のミスはあまり問題ではない。
用語や用法の決めつけをあらゆるレベルでやっているのを見て、
みんな真面目に対応するのをやめたのだと思う。
196:デフォルトの名無しさん
08/10/13 10:59:33
入門書くらい読め
197:デフォルトの名無しさん
08/10/13 12:32:51
>>196
結局それに尽きる
198:デフォルトの名無しさん
08/10/13 15:09:20
>>193 >>195
まったくそのとおりです。
>>196
確かに前に読んだ本に書いてあったような気がします。
199:デフォルトの名無しさん
08/10/13 18:03:06
>>175
いわゆるラクダ本はPerlを基軸言語にしたいというやつ以外、不要。
内容的に古いし、プログラミングの基本が学べるわけでもない。
そんなもんに金と時間使うなら、自分本来の得意分野を伸ばすことに時間を使え。
どうしてもってなら下巻だけ買っとけ。
200:デフォルトの名無しさん
08/10/13 20:41:17
リャマ本と続リャマ(動物の名前忘れた)は、単純に読み物として楽しめた。
201:デフォルトの名無しさん
08/10/13 21:33:58
>>200
アルパカな
>単純に読み物として楽しめた。
たしかにそうだが正直なところ
ああいう欧米系ジョークを交える書き方は
日本人には難しそうだ
202:デフォルトの名無しさん
08/10/13 22:20:19
>>201
確かに。
-------------------------
C++をを設計したストラウストラップの教本
↓
smalltalkの「メッセージ」を真似して「std::cout << "Hello, world!" 」なんて書けるようにしました。てへ。
↓
<< がCのビット演算子とかぶってるって?
しかも厳密な意味では演算子オーバロードですら無いって?
知ったこっちゃないね。重要なのは「メッセージ」だって言ってるだろ!
↓
最初の10数ページ以降「メッセージ」の概念が無くなってるって?
あーいいのいいの。これオブジェクト指向とやらを無理矢理実装した俺様仕様だからさ。気にすんなって。
-------------------------
おいらがC++を見限ったのは、このお笑いのツボが理解できなかったからだとさ。
203:デフォルトの名無しさん
08/10/13 22:24:33
リャマ本の第5版って翻訳されないのかな?
204:デフォルトの名無しさん
08/10/14 04:10:35
最近データーベースの勉強をしてるんだが、
perlのソースコードを一行一行、一行づつ全部
データーベースに格納したら面白いかな?
と考えたんだが、どうだろうか?
205:デフォルトの名無しさん
08/10/14 05:27:51
>>204
ストラウストラップ教本 の方がまだ面白い
206:デフォルトの名無しさん
08/10/14 06:11:35
google code search以上の物が出来るとは到底思えない
207:デフォルトの名無しさん
08/10/14 09:55:11
>>204
インクリメンタルに検索できるやつにしてね。
208:164
08/10/14 13:48:50
>>166、>>167
レス、ありがとうございます。
モジュール名を聞くとド真ん中な感じですが、
自分では見つけられませんでした。。。
Net::InterfaceモジュールをCPANからダウンロード
して試してみました。
常用しているActivePerl5.8@Winにインストール
しようとしたところ、残念ながらうまくいきませんでした。
ちょっとソース(siteconf)を覗いたんですが、どうやら
UNIX系専用のようですね。超残念。
別環境として、Perl5.6@UNIX系もありましたので、
そこでインストールしてみると、ちゃんとインストール
できました。
スクリプトを書いて動作確認したところ、たしかに
期待どおりの情報(IP、Subnet Mask、MACアドレス)を
取得することができました。
本稼働はUNIX系で行うつもりだったので、これで
充分ではあるのですが、できればWindows環境でも
実行したいです。
Windows環境で同様の情報を取得する方法は
ないでしょうか?
209:デフォルトの名無しさん
08/10/14 14:01:48
Net::Ifconfig::Wrapper - provides a unified way to configure network interfaces on FreeBSD, OpenBSD, Solaris, Linux, OS X, and WinNT (from Win2K).
はどうかな。説明文を読む限りでは使えそうだが試したことはない。
210:デフォルトの名無しさん
08/10/14 22:25:58
XMLをあつかいたくて
use XML::Tidy;
my $tidy = XML::Tidy->new($_);
とやっております。
このとき、不完全なXMLのときは、mismatchエラーが発生しますが、
これを無視して、可能な限りXMLを解釈して読み込むことはできないのでしょうか?
バージョンは
perl : v5.8.8
XML::Parser : 2.34
XML::Tidy : 1.2.54HJnFa
です。
211:デフォルトの名無しさん
08/10/14 22:41:55
XML::Tidyじゃなくなるけど、
XML::Liberal+XML::LibXMLなんて組み合わせは?
212:デフォルトの名無しさん
08/10/14 23:18:27
>>211
ありがとうございます。
試してみます。
213:デフォルトの名無しさん
08/10/15 12:54:22
古いPerlのコードで
&jcode'convert(*title,'jis');
というコードがあったんですが、これってどういう意味ですか。
&jcodeのあとの「'」がわかりません。
214:デフォルトの名無しさん
08/10/15 12:59:01
>>213
URLリンク(www.kt.rim.or.jp)
> 古いパッケージ区切り子はシングルクォートでしたが、
> 現在はダブルコロンを使うのが推奨されています。
> 古い構文も互換性のためにまだサポートされているので、
> "This is $owner's house"のようにすることもできます。
> これは$owner::sをアクセスします。
215:デフォルトの名無しさん
08/10/15 15:14:35
>>210
それがDOMを構築しようとするものなら、
エラーが出るのはどうしようもないのでは。
かわりにSAX系のパーサーを使えば?
XML::Parserとか。
それなりにめんどくなりそうだけど。
216:デフォルトの名無しさん
08/10/15 16:47:01
スレリンク(prog板:168番)
この人小学生からperlやってるってよ
217:デフォルトの名無しさん
08/10/15 18:05:05
>>214
さんくす
Perlの古い書き方だったんですね
218:デフォルトの名無しさん
08/10/15 20:12:37
Perlに古いも新しいもない。
219:デフォルトの名無しさん
08/10/15 21:21:12
そうですね。
>>217で書いてるのはPerlの書き方が古いか新しいかですけどね。
220:デフォルトの名無しさん
08/10/16 00:57:28
律儀な人ね
221:デフォルトの名無しさん
08/10/17 01:04:15
クロージャーって意味がわからんな
カンタンに説明してくれないか?
222:デフォルトの名無しさん
08/10/17 03:29:24
自分で調べようともしないお前に誰が教えるもんか!
223:デフォルトの名無しさん
08/10/17 03:41:29
無名の関数ですね^^
224:デフォルトの名無しさん
08/10/17 12:54:52
>>221
エロ画像フォルダで実感しろ。…普通に object 指向で書く方が楽だ罠。
use File::Find ;
use Data::Dumper ;
use Cwd ;
my $outer = sub{ return 1 if !( -d and /.[.][^.]*?$/) ; $File::Find::prune = 1 ; return ; } ;
my %hash ; my %hash2 ;
my $inner = sub{ return if ! m{\.(?:jpg|bmp|png|gif)$} ; $hash{$File::Find::name} = -s $_ ; } ;
my $inner2 = sub{ push @{$hash2{ uc unpack q{A7}, $_ }}, $File::Find::name ; } ;
my $code = sub {
my $outer = shift ;
sub { # コレが closure
my $inner = shift ;
sub { return if ! $outer->() ; $inner->() ; }
}
};
my $base = $code->( $outer ) ;
find $base->($inner), getcwd ;
find $base->($inner2), getcwd ;
print Dumper \%hash, \%hash2 ;
225:デフォルトの名無しさん
08/10/17 12:55:36
>>223
違うとマジレス。
ちゃんとした説明はなかなか大変だよなー。
226:デフォルトの名無しさん
08/10/17 14:09:39
>>221
URLリンク(www.kt.rim.or.jp)
227:デフォルトの名無しさん
08/10/17 19:05:02
スカラー変数の中身の種類(文字列とか、配列のリファレンスとか)を
調べるにはどうしたらいいですか?
228:デフォルトの名無しさん
08/10/17 19:11:14
ref
229:デフォルトの名無しさん
08/10/17 19:13:16
>>227
ref
230:デフォルトの名無しさん
08/10/17 19:22:50
>>228-229
サンクス
231:デフォルトの名無しさん
08/10/17 21:30:11
モジュールのバージョンをまとめて上げたら
MechanizeでBASIC認証がなぜか出来なくなった…
UserAgentオーバーライドしてもcredentialsでもだめ
URLリンク(id:pass@hoge.com)とかやると繋がるけど…
何が悪いんだろう…
同じような人が居たらヒントでもいいんで教えてもらえると有難いです。。
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5044日前に更新/169 KB
担当:undef