Perl初心者スレ(マジレス回答) (523レス)
上下前次1-新
353(1): 2015/01/20(火)02:00 ID:FcML0ncg(1/2) AAS
>>350 >>351
例えば、こんな表です
外部リンク[htm]:ke.kabupro.jp
今はHTMLのソースを見て、証券コードを正規表現で抽出するために、
=~ m!<tr><th><a\shref[^>]+>(\d{4})<\/a>!ig
などとして配列へ入れているのですが、泥臭いです。
もっとスマートに取得できるモジュールは無いかと思った次第です。
354: 2015/01/20(火)02:06 ID:FcML0ncg(2/2) AAS
(続き)
例えば統計計算用のRでは readHTMLTableというモジュール(パッケージ?)があり、表形式のデータを含んだurlを指定すれば、簡単に取得出来るのですが。
355(1): 2015/01/20(火)07:56 ID:y2BAlbXr(1) AAS
>>353
HTML::TableExtract
外部リンク[pm]:search.cpan.org
Web::Scraper
外部リンク[pm]:search.cpan.org
356: 2015/01/20(火)12:03 ID:NiHMzyM4(1) AAS
>>355
ありがとうございます
357: 2015/03/13(金)20:55 ID:hJWhu2F/(1) AAS
なにこの良スレ
358: 2015/03/28(土)10:06 ID:spJK+jxH(1) AAS
my $tmp = {
$a => sub { $_ = 処理A},
$b => sub { $_ = 処理B},
$c => sub { $_ = 処理C},
};
ループ中に↑のように書いている場合、一つの変数に対して複数の処理($a に 処理A' を追加)を
加えたい場合、どのように書くのでしょうか?
359: 2015/03/30(月)16:12 ID:4W43OXe7(1) AAS
;
360: 2015/04/12(日)18:06 ID:eedq/AcT(1/3) AAS
凄い初歩的な質問だと思うのですが真剣に行き詰まってます
教えてください
_HOGE_
こんな表記の変数ってなんて表現するんですか?
またネットでこういう変数について調べたいときは、
どのように検索したらヒットしますでしょうか。
Perl __
で検索しても全然それらしい記事が発見できず
361(1): 2015/04/12(日)18:43 ID:Xaz/Qvpp(1) AAS
_HOGE_は変数じゃないからヒットしないのが正解
もしかして:ヒアドキュメント
362: 2015/04/12(日)20:02 ID:eedq/AcT(2/3) AAS
なるほど・・・独自のプログラム記述なんでしょうかね・・・
Perlの変数記述方法じゃないことがわかって少し安心しました
もう一回解析してきます
363: 2015/04/12(日)20:06 ID:eedq/AcT(3/3) AAS
>>361さんの回答で先入観が排除され、
意味がわかりました。
$mes =~ s/_HOGE_/$name/g;
文字列に埋め込まれた_HOGE_を別の変数に代入されてる文字列と置換させていました。
ありがとうございました。
364: 2015/04/13(月)07:38 ID:bJ3+bESR(1) AAS
__END__
とかそんなのの仲間じゃなくて?
365(1): 2015/05/14(木)07:11 ID:y4MWBEfC(1) AAS
なんでも受け付けるからって、
__HOGE__ をヒアドキュメントとして使ってる人は、単に
特殊リテラルを理解してない人。
質問に超絶遅レスするなら、
__HOGE__は、ほんとうに HOGE と書かれていたなら、
特殊リテラルのまねっこ。
DATA, END などなら、perldoc.jp で perldata から「特殊なリテラル」の項を
参照すること。
366: 2015/05/15(金)01:58 ID:3U2TIRvt(1) AAS
>>365
どういうこと?
367: 2015/05/15(金)02:39 ID:PxFVj8Xw(1) AAS
ヒアドキュメントのデリミタを
print <<die;
dieなんてしないよ
die
ってしたら混乱するでしょ。それと同じレベルで特殊リテラルの
記載に類似(もしくはそのまま)させて使ったら、あかんでしょ。
print <<__END__;
dieなんてしないよ
__END__
って主旨?
368(1): 2015/05/17(日)23:46 ID:wdkXHT83(1) AAS
絶対にありえない単語を区切りにしないと、区切りとしての役目にならんだろが
__END__を区切りにしてしまったら、__END__という単語が使えなくなるだろ
369: 2015/05/18(月)00:16 ID:4BIqDTjB(1) AAS
じゃあ __HOGE__ にするわ。絶対ありえん単語だし。
370: 2015/05/18(月)00:56 ID:sNwS2iXa(1) AAS
>>368
実行してみろよ、動くぞ。
use strict ;
use warnings ;
while(<DATA>){
print ;
}
print <<__DATA__;
これがヒア
__DATA__
__DATA__
特殊リテラル
371: 2015/05/28(木)16:11 ID:lXL23oHs(1) AAS
ID.パス付きのHPの更新通知プログラムをつくり実行したところ (certificate verify failed)とハマりました。
おそらくSSL関係でつまっています。
簡単に教えてくれる方お願いします。
$mech->get('https://*****');
↑指摘されたラインです
SSLかと思うのですが、SSLについて知識があまりないため、
ダメだった理由をわかりやすく教えていただけませんか?
あと、ユーザーIDやパスワードの前にpitgetを書いてあると
どうなるのでしょうか?
説明下手でごめんなさい。
372: 2015/06/08(月)21:35 ID:fDJEyEgd(1/2) AAS
特定のディレクトリ(test)からファイルを読み込む処理を
実装しようと思っています。
while(<./test/*>){
#〜ファイル読み込み処理
}
はOKなのに
$hoge = "./test/*";
while(<$hoge>){
#〜ファイル読み込み処理
}
がうまくいかない理由はなぜなのでしょうか?
$hogeを可変にしたいのですがどうすればよいでしょうか?
突然の質問で申し訳ありませんが、宜しくお願いします。
373(1): 2015/06/08(月)22:51 ID:tIKF3SUY(1) AAS
$hoge = "./test/*";
これは文字だからです。(演算子に対するアドレス(ポインタ)ではありません)。
$hoge = "test";
while(<./$hoge/*>)
374: 2015/06/08(月)23:05 ID:fDJEyEgd(2/2) AAS
>>373
出来ました!ありがとうございます
今日かなり悩んでいました
おかげ様でスッキリしました
375: 2015/08/31(月)00:47 ID:xgd4PpfH(1) AAS
下のようにリストのリストを作成したいがcpanか何かで実現できないでしょうか?
> (list (list 1 2) (list 3 4))
((1 2) (3 4))
> (first (list (list 1 2) (list 3 4)))
(1 2)
> (second (list (list 1 2) (list 3 4)))
(3 4)
my @car = (1, 2);
my @cdr = (3, 4);
my @both = (@car, @cdr);
print "\@car is @car\n"; # -> @car is 1 2
print "\@cdr is @cdr\n"; # -> @cdr is 3 4
print "\@both is @both\n";# -> @both is 1 2 3 4
printf "%s\n" , $both[0]; # -> 1
printf "%s\n" , $both[1]; # -> 2
printf "%s\n" , $both[2]; # -> 3
printf "%s\n" , $both[3]; # -> 4
376: 2015/08/31(月)13:20 ID:Q0xjlAqa(1/2) AAS
Lisper な人?
多分、こういうことをお望みかな。
#!/usr/bin/perl
use Data::Dumper;
my @car = (1, 2);
my @cdr = (3, 4);
my @both = ( \@car, \@cdr);
print( Dumper( \@both));
377(1): 2015/08/31(月)13:31 ID:Q0xjlAqa(2/2) AAS
ごめん、アクセス方法も書かなきゃね。
#!/usr/bin/perl
my @car = (1, 2);
my @cdr = (3, 4);
my @both = ( \@car, \@cdr);
print("$both[0]->[0]\n");
print("$both[0]->[1]\n");
print("$both[1]->[0]\n");
print("$both[1]->[1]\n");
378: 2015/08/31(月)18:13 ID:zR+vvNwg(1) AAS
>>377
ありがとう perlのリファレンス表記がこの機会に少し分かりました
my @car = (1, 2);
my @cdr = (3, 4);
my @both = ( \@car, \@cdr);
print("$both[0]->[0]\n");
print("$both[0]->[1]\n");
print("$both[1]->[0]\n");
print("$both[1]->[1]\n");
print("@{$both[0]}\n");
print("@{$both[1]}\n");
379: 2016/01/10(日)13:19 ID:/ndDSiBm(1) AAS
971 名前:名無しさん@七周年[] 投稿日:2006/11/11(土) 00:56:10 ID:M8+ahUZV0
自称スーパープログラマー某
強烈加齢臭
メール見ない メール無視
ドキュメント見ない ドキュメント無視
説明聞かない 説明無視
話聞かない 話無視
ガム→むっちゃー むっちゃー むっちゃー むっちゃー
煎餅→バリバリバリバリバリバリ
菓子パン→モグモグモグモグモグモグモグモグモグモグ
カップアイス→むっちゃー むっちゃー ペロペロペロペロ
フロアすべてに響き渡る 超ばかでかいくしゃみ 当然手でおさえない
異音と異振動
ドスーン!ドスーン! ドカーン!ドカーン! バコーン!バコーン! ズドン!ズドン!
机が近いとマウスポインターが飛ぶ 誤操作誘発
書類だしたりしまうだけでドカンドカン
30秒ごとに口と鼻から異音
ふんっっ! ふんっっ!
備品破壊 貸与P C 破壊 他人のもの破壊
奴の作ったスクリプトとプログラムは使えない バグ製造機
電話や共有携帯電話 キーボードが油ベタベタ
奴に電話とPCとコンソールは触らせてはいけない
380(2): [age] 2016/11/02(水)10:11 ID:+6JfDybA(1/2) AAS
HTMLファイルの特定文字列を大文字から小文字へ置き換えたいです。
具体的には、name=
381: 380 2016/11/02(水)10:15 ID:+6JfDybA(2/2) AAS
あれ、途切れちゃったのでダブルクォートでおかしくなったので、無しで書きます。
HTMLファイルの特定文字列を大文字から小文字へ置き換えたいです。
具体的には、name=A10AB を name=a10ab とnameの部分のみ置き換えたいです。
382(1): 2016/11/03(木)19:06 ID:OIFmvywo(1) AAS
s{ name=" ([^"]+) " }{ 'name="' . lc($1) . '"' }egx
上下前次1-新書関写板覧索設栞歴
あと 141 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.012s