Perl初心者スレ(マジレス回答) (523レス)
上下前次1-新
262(1): 2014/02/22(土)23:28 AAS
>>259
マジレスすると今現在はRuby
但し3ヵ月後、半年後は分からん
自分でその情報を追えないならSEはやめとけ
今現在既に追えてないみたいだけど
263(1): 2014/02/22(土)23:50 AAS
>>259
そもそもその文脈でCGIは全く関係ないよ。そこに気付けないなんて釣りだろ?
264(1): 2014/02/22(土)23:56 AAS
>>260-263
ありがとうございます!
javaか、PHPか、perlで悩んでました。
色々調べると、PHPが入り易そうなので、、
明日、本屋に行って、決めます。
※CGIは、掲示板とか作るのであって、検索とかするのとは違うなあ、
と思いながら、プログラマさんの意見を聞いていました。
265: 2014/02/23(日)00:03 AAS
>>264
やっぱ釣りだったか
266(2): 2014/02/23(日)00:08 AAS
PHPが第一候補だったのですが、某サイトで、
PHPは、WEB系以外には、まったく意味がない、との様なコメントがあり、困りました。
javaは、いきなり入るには、まだ敷居が高いかなと悩みました。
perlは、単に簡単な、検索や置換には適しているようなコメントで一気に候補に挙がりました。
これらから悩んでいたんです。コメントありがとうございます。
267(1): 2014/02/23(日)00:20 AAS
>>266
そのコメントとやらの投稿日時と信憑性も確認しろよ
まさか去年の夏以前の投稿で、しかも第一線で活躍してい"た"奴の投稿じゃないだろうな
3ヵ月以内の投稿で、しかも第一線で活躍してい"る"人の投稿なら信用しろ
そしてそういう人ならまずPerlを候補に挙げることはない
まぁ第一線で活躍してるわけでもない俺のこんな匿名の投稿も信憑性がないだろうから
第一線で活躍してる人がPerlなんか使わないということは自分の目で確認してくれ
268: 2014/02/23(日)00:24 AAS
>>267
投稿日時、第一線は確認していませんでした。
すみません、助言、ありがとうございます。
269(1): 2014/02/23(日)00:27 AAS
>>266
PHPがWeb系以外に使えんのは本当
Perlでも良いけど、RubyやPythonも有効だよ
まあ、まずは最初にシェルスクリプトだけどね
270(1): 2014/02/23(日)00:38 AAS
と言うか、PerlスレにPHPのこと聞く時点で釣り
271: 2014/02/23(日)00:39 AAS
>>269
>PerlとLispが結婚して隔世遺伝が黒魔術で生まれた言語。
>Javaは硬度8くらい、Pythonは6くらいになるのに対して、Rubyは3くらいになる。
との記事を見つけました。いつの記述かわからないのですが(汗)
Rubyも明日、本屋で漁ってみます。ありがとうございます。
272: 2014/02/23(日)00:40 AAS
>>270
すみません。退散します。
みなさん、マジレス、ありがとうございます。
273: 2014/03/05(水)06:22 AAS
>>232-234
_EOM_なんて使っちゃだめだよ。見づらい。
print "Content-type: text/html\n\n";
print "<html>";
print "<body>";
print "A*B = $A * $B";
print "</body>";
省1
274(3): 2014/03/25(火)21:15 ID:dz69sIJc(1/3) AAS
print "あいうえお";
↑これを文字コードをeuc-jpで保存してコマンドプロントからこのファイルを実行して
コマンドプロンプト上に文字化けなく あいうえお と出力させるにはどういうコードを追加すればいいの?
275(1): 2014/03/25(火)21:25 ID:dz69sIJc(2/3) AAS
>>274はちょっと疑問に思っただけで何かするのに必要なワケじゃないので無理して
答えようとしないで下さい。たぶんちょっとググった程度で分かるようなことではないです。
276(1): 2014/03/25(火)21:54 ID:En8OrmpQ(1) AAS
>>274-275
外部リンク[pod]:perldoc.jp
use encoding 'euc-jp', STDOUT => 'cp932';
但し Perl 5.18.0 以降、encoding プラグマは非推奨で将来的に削除される予定。
外部リンク[html]:perldoc.perl.org
277: 274 2014/03/25(火)22:08 ID:dz69sIJc(3/3) AAS
>>276
うおお、すごい、あっさり出来てしまった・・。
今日一日↓こんなのでやろうとして泥沼にハマってました。
use encoding "euc-jp";
binmode STDOUT, ':encoding(cp932)';
スーパーハカーさんどうもありがとう〜
278(2): 2014/05/07(水)01:39 ID:NfbdqxRr(1/2) AAS
print +(3,2,1,),"\n";
↑これ、+記号を消すと改行が反映されなくなるんですが、この+記号って
どういう意味ですか?ググるためのキーワードだけでもおねがいします。
ググると +{ } は出てきたんですが +( ) はなぜか見つかりませんでした。
279(1): 2014/05/07(水)04:47 ID:nyTYPDB6(1) AAS
>>278
(print(3,2,1)), "\n";
280(1): 2014/05/07(水)06:28 ID:WoJ0c0N0(1) AAS
+() は scalar () とほぼ同等。
+{}は、ブロック中の戻り値(?)をスカラーとして評価しますって意味。
+()は、リストとして評価しませんよーって意味。
perldocのperlopの
Terms and List Operators (Leftward)
と
Unary "+"
省1
281: 278 2014/05/07(水)09:44 ID:NfbdqxRr(2/2) AAS
>>279-280
なるほど、+{ } と同じような使い方だったんですね、ありがとうございました。
perldocもこれから読んでみます、多謝。
282(1): 2014/05/17(土)17:23 ID:syasv/b2(1/2) AAS
windowsの隠しファイルを判別する方法を教えてください
283(1): 2014/05/17(土)18:53 ID:9KhUrEje(1) AAS
>>282
外部リンク[pm]:search.cpan.org
use Win32::File qw(GetAttributes HIDDEN);
GetAttributes($ARGV[0], my $attr) or die $!;
print +($attr & HIDDEN) ? 1 : 0;
284: 2014/05/17(土)18:54 ID:syasv/b2(2/2) AAS
>>283
ありがとうございます
285(2): 2014/05/24(土)13:13 ID:JzdRsmzF(1) AAS
掲示板のCGIを設置したんだけど、<a href="./bbs/mtbbs.cgi?">って感じにリンクするようにして、外部リンク:172では、ちゃんと作動したんだけど、
実際にFTPに転送すると、作動しないどころか画面が写らない
500エラーが出てくる
原因に関してはまだわかんなくて、調べてるんだけど、そもそも思ったのが<a href="./bbs/mtbbs.html">ならまだしも<a href="./bbs/mtbbs.cgi?">なんて、直にリンクすることなんてできるの?
286: 2014/05/24(土)17:20 ID:Cq+cm/k7(1) AAS
>>285
WebProg板へドゾー
287: 2014/05/25(日)10:23 ID:iOXakntE(1) AAS
>>285
リンクはできる
動かない原因は別にある
288: 2014/06/04(水)10:34 ID:8N6swAY/(1) AAS
知恵袋で質問したら回答どころか閲覧すらなさすぎワロタ・・・
289: 2014/06/04(水)15:39 ID:ZiHf6GEW(1) AAS
早くマジレスしろ屑やろう
290: 2014/06/05(木)04:14 ID:tjfA5i3O(1) AAS
質問してもどうせまともに答えてくれないんだろうな
どこ行っても解決しないわ
291(1): 2014/06/05(木)06:34 ID:Mvr5+GEe(1) AAS
Web以外で最近なんか未解決質問あったっけここ
292: 2014/06/05(木)19:01 ID:aZWI6Ot4(1) AAS
>>291
今日も元気に残件なす!
293(1): 2014/06/08(日)05:04 ID:LT2twBt5(1) AAS
複数のRSSフィードを結合して一つのRSSを生成したい。
その際、「生成されたフィード記事のリンクURLすべてを任意のリンク先に指定する。」
このやり方を教えてください。
XML::FeedPP、XML::TreePPというモジュールを用い、下記のCGIプログラムを使用して自動更新する1つのフィードを生成するところまでは出来ました。
しかし、他の部分はチョロチョロと変えることができるのですが、記事リンクだけはどうしても変えることができません。全部の記事リンクを、ある1つのリンクに変換したいだけです。
#!/usr/bin/perl
use XML::TreePP;
省18
294: 2014/06/10(火)06:01 ID:hRaawaun(1) AAS
>>293
WebProg
2ch板:php
295(2): 2014/06/10(火)12:30 ID:zpbxFFHG(1/2) AAS
画像リンク[jpg]:s1.gazo.cc
こういった10行で一組のデータの中に
---
市民の...
yerles
warrior
---
省19
296: 2014/06/10(火)13:44 ID:kKsVvptA(1/2) AAS
>>295
外部リンク:ideone.com
297: 2014/06/10(火)13:58 ID:kKsVvptA(2/2) AAS
手抜きすぎた。
>>295
外部リンク:ideone.com
298: 2014/06/10(火)14:45 ID:zpbxFFHG(2/2) AAS
凄い。ありがとう。
出てきたshiftとか勉強してみます
感謝
299: 2014/06/11(水)22:22 ID:PCU6+AOL(1) AAS
どこにshiftの出番があるのか?と思ったらそう言うことか。
普通に配列に突っ込んで、マイナスのインデクスでアクセスすりゃいいやん。
$ perl -Mvars=@a -lne 'push @a, $_ ; next if !/dog/ ; next if $a[-3] !~ /市民/ ; print $a[-3]' File
メモリ喰いが気になるのなら、
$ perl -Mvars=%h -lne '$h{$.} = $_ if /市民/ ; next if !/dog/ ; next if ! defined $h{$. - 2} ; print $h{$. - 2}' File
とか、で節約すりゃいい。、、、けど、今時そんなの気にする必要もないだろ
上のワンライナーでやってる事は、
省2
300(1): 2014/06/12(木)13:15 ID:qt4Roz23(1) AAS
恰好をつけるなら、リングバッファでも書くところですが、回答としては、あんまりだと思ったので。
2行固定なら、別に使わなくても。
perl -ne '($_, $x, $y) = ($x, $y, $_); $y =~ /dog/ && /市民/ && print' File
何も考えなくていいなら、正規表現でバッサリ。
perl -e 'print((local $/ = <>) =~ /(^.*市民.*\n).*\n.*dog/gm)' File
301: 2014/07/13(日)23:15 ID:m+RTKRIb(1) AAS
>>300
1ヵ月以上もお前のレスにレスがつかないのはなぜか分かる?
お前みたいなゴミクズは誰も必要としてないからだよ。
一般社会ではあからさまに無視するわけにもいかないから当たり障りのない対応をしてもらってると思うけど、
お前ハッキリ言って迷惑だから。
ゴミクズはネットでもリアルでもできるだけ社会と接点持つな。
302: 2014/07/26(土)13:51 ID:5yhnFgSu(1/2) AAS
Test Summary Report
-------------------
t/config-finder.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: Bad plan. You planned 26 tests but ran 0.
Files=86, Tests=923, 636 wallclock secs ( 2.64 usr 1.67 sys + 247.77 cusr 297.98 csys = 550.05 CPU)
Result: FAIL
省17
303: 2014/07/26(土)14:09 ID:mdOIZXZW(1) AAS
make test had returned bad status, won't install without force
まけ出来てるのならいんすこ自体は可能
304: 2014/07/26(土)15:10 ID:5yhnFgSu(2/2) AAS
force installでcygwinの方に入れました
正常に動作します
ありがとうございました
Linuxの方は、手っ取り早く
sudo aptitude install ack-grep
しました
おかげさまで両方にackが揃いました
省1
305: 2014/08/06(水)20:37 ID:Wa4hIBKh(1/3) AAS
xmlを取得して中身を
s|。|。<br>|g;
して句読点ごとに改行させたかったのですがどうしても出来ません
なにか理由があるのでしょうか
初心者なもんで変な質問をしていたらすいません
306(1): 2014/08/06(水)20:41 ID:itqhygIz(1/3) AAS
文字コード
307(1): 2014/08/06(水)20:43 ID:E5F7+XJp(1/3) AAS
エスパーじゃないんだから、そんな質問で答えれる訳ないだろ。
せめてサンプルとなる簡単なxmlを出せよ・・・
308(2): 2014/08/06(水)21:39 ID:Wa4hIBKh(2/3) AAS
申し訳ないです
>>306
デコードはしています
>>307
申し訳ありません
wikipedia.simpleapi.net/api?keyword=Test&output=xml
309: 2014/08/06(水)22:33 ID:E5F7+XJp(2/3) AAS
>>308
テストした結果、普通に置き換えできます。
取得方法に問題があるんだろう。
ってか、こんな質問の仕方じゃスレ全部埋まるわ・・・
問題が起きてるサンプルコード出してみ
310(1): 2014/08/06(水)22:37 ID:itqhygIz(2/3) AAS
>>308
ちげーよ
utf8のファイルをeucのスクリプトでマッチしようとしたんじゃないの、ってこと
311(1): 2014/08/06(水)22:48 ID:Wa4hIBKh(3/3) AAS
>>310
shift-jisのスクリプトでマッチさせようとしました
不味かったでしょうか
312: 2014/08/06(水)23:05 ID:itqhygIz(3/3) AAS
>>311
なら、どっちかの文字コードにencodeして合わせる
313: 2014/08/06(水)23:07 ID:E5F7+XJp(3/3) AAS
いや、よほど特別な事情がない限りは utf-8 のソースにするべき。
外部リンク:d.hatena.ne.jp
この辺読んで理解するべき。
314(1): 2014/08/18(月)11:10 ID:Umc6CSTk(1) AAS
> perl -e "print (5+5)/3"
10
なんで?
315: 2014/08/18(月)19:48 ID:3b1Nz6uJ(1) AAS
print -e "print((5+5)/3)"
316: 2014/08/19(火)07:25 ID:o0wKf1/G(1) AAS
>>314
外部リンク[pod]:perldoc.jp
> 括弧を使うときには、単純な、(しかし、ときには驚く結果となる規則が 適用できます:
> 関数に見えるならば、それは関数で、優先順位は関係ありません。
(略)
> Perl に -w スイッチを付けて実行すれば、こういったものには警告を 出してくれます。
317: 2014/08/19(火)20:11 ID:pX43W7dG(1) AAS
2000年には既にwarnings実装してんのに
なんで未だに、-w推薦文章なんか残してんだろーね?
-Mwarningsのエイリアスって訳でもねーし。
318(1): 2014/09/02(火)01:23 ID:ytxIDh0v(1) AAS
【誤】print -e "print ((5+5)/3)"
【正】perl -e "(print(5+5)) / 3"
ついでに -w と -Mwarnings は別物。-Mwarnings で -w の代わりになるわけではない。
319: 2014/09/02(火)02:10 ID:EB7tqG6E(1) AAS
だが共に生きることはできる
320: 2014/09/02(火)04:04 ID:smXsHdMQ(1) AAS
>>318
-w ≠ warningsは常識だろ。
で、「use Unicodeは、use Jcodeの代りじゃない」ってレベルの事を言ってるぞ、おまえさん。
-wが石頭だから、より制御しうるwarningsを実装したんだろが。
321: 2014/09/02(火)07:00 ID:DO1XeoYm(1) AAS
5.20のperllexwarnがスッキリしててワラタ。
322: 2014/10/02(木)21:11 ID:5+m7m9lZ(1) AAS
常識の根拠は常識は常識だから(真顔)
323: 2014/11/05(水)08:46 ID:aEzkt3Do(1/3) AAS
再帰中に再帰の深さを出したいんだけどlocal使っていい?
local $::count = $::count + 1;
もっと普通の方法ある?
324: 2014/11/05(水)11:35 ID:+yDKEom1(1) AAS
引数で渡す
sub foo {
my ($arg, $count) = @_;
...;
foo($arg, $count) if $count++ < 10;
}
325: 2014/11/05(水)14:22 ID:aEzkt3Do(2/3) AAS
ありがとーーー。
複製される変数の数には変わりがないよね、たぶん。
上はグローバル変数と言うのが気に入らなくて、下は引数で扱う値が増えるのが気に入らないが。
326: 2014/11/05(水)16:45 ID:aEzkt3Do(3/3) AAS
while(@all){ ((shift @all) eq 'cut') and last; }
whileを修飾子として書くと落ちるんだが誰か理由を教えてくれー
((shift @all) eq 'cut') and last while(@all);
evalでも落ちた
327(1): 2014/11/11(火)22:49 ID:AzojYpxL(1) AAS
英数混じった文字列の中から2桁の数字にマッチさせたいのですが、
/\d\d/だと3桁以上の数字の前2桁にもマッチしてしまいます。
/^(\d\d)\D|\D(\d\d)\D|\D(\d\d)$|^(\d\d)$/ こんなことするより簡単な方法ないでしょうか?
328: 2014/11/12(水)00:09 ID:WHJDipVn(1) AAS
[^\d]\d{2}[^\d]
329: 2014/11/12(水)02:38 ID:T/b7ogJF(1) AAS
% perl -le 'print q{22} =~ /[^\d]\d{2}[^\d]/'
% perl -le 'print q{22} =~ /(?<!\d)\d{2}(?!\d)/'
1
% perl -le 'print q{22} =~ /(?:^|\D)\d{2}(?:$|\D)/'
1
330: 327 2014/11/12(水)22:11 ID:obciIUzc(1) AAS
/(?<!\d)\d{2}(?!\d)/
これが期待通りの結果が得られました。
(?<!)とか(?!)とかこれまで使ったこと無かったので勉強になりました。
ありがとうございました。
331: 2014/11/13(木)00:03 ID:w30Rb1CY(1) AAS
テストパターンに英字が入ってませんぜ
332(1): 2014/11/13(木)05:25 ID:iJHzIgO3(1) AAS
\b使えよ。便利だぞ。
333: 2014/11/13(木)05:51 ID:DTTQy1M/(1) AAS
そりゃ\b使って期待通りの結果が出るなら使うだろ
334(2): 2014/11/13(木)23:58 ID:bKuFahzS(1) AAS
以下のような日付が下から上に並んでいるoriginal.txtがあるとします。
これを、日付を逆順にしたoutput.txtに整形するプログラムを作りたいです。
Windowsで、Batch fileとPerlで作れたらと考えています。よろしくお願いします。
<original.txt>
########## 20141203 ###########
DNINITIENK
FDKHJKDKKSK
省22
335: 2014/11/14(金)00:03 ID:cRe1Bhcz(1) AAS
>>332
\bだと英字と数字の境目は単語の区切りにならないみたい。
336(1): 2014/11/14(金)01:18 ID:VOKh6jxm(1) AAS
centosで元から入ってるperlとは別にソースインストールしたperlを別に入れました。
新しくインストールしたperlで以前から入っていたCPANモジュールを使いたい場合、再度入れなおす必要ありますか?
337(1): 2014/11/14(金)02:49 ID:FARMtlO3(1/2) AAS
>>334
perl -Mvars=%h -ane '$a = $F[1] if @F == 3 ; $h{$a} .= $_ }{ print $h{$_} for sort { $a <=> $b } keys %h’ original.txt
>>336
モジュールの共用は避けるべき
338(1): 2014/11/14(金)06:59 ID:Ul+u6aQZ(1) AAS
>>334
use 5.016;
use warnings;
my $boundary = qr/^#+\s+\d+\s+#+\s*$/;
open(my $in, "<", "original.txt") or die;
my @data;
my $chunk = '';
省14
339(1): 2014/11/14(金)20:30 ID:FARMtlO3(2/2) AAS
単純に逆にするだけか
perl -00pe '$_ = join q{}, reverse ( split /(?=^#)/m)'
340: 2014/11/16(日)13:54 ID:f46/IGen(1) AAS
>338,337,339
有難うございました。
341: 2015/01/12(月)10:56 ID:av7JsOQD(1) AAS
my $initial_title_ = "\$" . "$initial_threads" . "_begin";
$initial_title_ = eval $initial_title_;
1行に短くなりませんか?
342(1): 2015/01/13(火)00:30 ID:Dvj6a5BR(1) AAS
my $initial_title_ = eval "\$${initial_threads}_begin";
こういうこと?
上下前次1-新書関写板覧索設栞歴
あと 181 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.031s