Perlについての質問箱 65箱目
1 :デフォルトの名無しさん :2021/03/27(土) 23:52:13.17 ID:vQS/WYw3.net CGIについての質問は板違いです。WEBプログラミング板でどうぞ。 CGIとPerlの区別がつかない人もWEBプログラミング板に行ってください。 (WEBプログラミング板: https://medaka.5ch.net/php/ ) このスレでは(CGI以外の)純粋にPerlのみに関係する質問を取り扱っていこうと思います。 スレ違いの質問にはスルーか、速やかな誘導をお願いします。 荒らしはスルー推奨。 "The duct tape of the Internet" こと、Perlについての質問箱です。 "There's more than one way to do it" ということで、 Perlの奥深さについて皆で語り合い、追求してまいりましょう。 www.perl.org/get.html Download Latest Stable Source (5.32.1) ▼前スレ Perlについての質問箱 62箱目 http://toro.5ch.net/test/read.cgi/tech/1385039352/ Perlについての質問箱 63箱目 https://mevius.5ch.net/test/read.cgi/tech/1392820583/ Perlについての質問箱 64箱目 https://mevius.5ch.net/test/read.cgi/tech/1548981877/
63 :デフォルトの名無しさん :2022/01/08(土) 23:05:04.70 ID:Df3tzX0P.net 逆スラッシュは、日本語・Windows 用のキーボードで、半角の\ と同じ 半角の\ と見た目が同じでも、異なる文字コードの文字があるので、 それは使わないようにすべき!
64 :デフォルトの名無しさん :2022/01/09(日) 19:38:34.71 ID:C8vy8rqb.net プログラムコードの中に全角文字を入れない というだけで十分では?
65 :デフォルトの名無しさん :2022/01/09(日) 20:41:20.51 ID:G7UaEudb.net そんな話はしていない。 アホなの?
66 :デフォルトの名無しさん :2022/01/09(日) 20:58:02.56 ID:j/1ajBbY.net 運用でカバーできる…そんなふうに考えていた時期が俺にもありました
67 :デフォルトの名無しさん :2022/01/10(月) 00:32:28.18 ID:lVSGmVUf.net おまいらの話がさっぱりわからん もしかしておまいらの画面にはレス中の \ が \ と表示されてるのか?
68 :デフォルトの名無しさん :2022/01/10(月) 00:32:56.45 ID:lVSGmVUf.net あーやっぱりそうかww
69 :デフォルトの名無しさん :2022/01/10(月) 00:57:25.51 ID:av6tewvz.net U+005C なのか U+00A5 なのかという問題
70 :デフォルトの名無しさん :2022/01/10(月) 01:03:42.10 ID:av6tewvz.net 以前 Linux の端末で Perl のプログラムで改行として ¥n を入れたらそのまま画面に ¥n が出て来て驚いたことがあったが、 その時はキーボードの「¥」を押すと U+00A5 が入力されており「\」を押すと U+005C が入力されている状態だった。 もちろんキーボードの通りに端末画面に出る。 ま、しかし、これが本来あるべき姿だよな。
71 :デフォルトの名無しさん :2022/01/10(月) 01:06:59.43 ID:9yjjKzLZ.net お前ら安心しろ、PowerShellのエスケープ文字はバッククォート「`」だ
72 :デフォルトの名無しさん :2022/01/10(月) 18:57:32.72 ID:iL7OUFIC.net evalは使わない方がいいって聞いたけど 例外処理でeval使わない方がいいんですか? それなら例外処理はどうすればいいんですか?
73 :デフォルトの名無しさん :2022/01/10(月) 19:47:01.57 ID:VCZFr+j9.net >>72 文字列のevalは使うなという話やろ? でなければ、そう言ったヤツに聞かんと。
74 :デフォルトの名無しさん :2022/01/10(月) 19:53:08.99 ID:av6tewvz.net セキュリティホールを作ってしまうかも知れないから使うなら気をつけて使えってことだろう。 特に外部から入力した文字列を元にしてevalに渡す文字列を作る場合な。
75 :デフォルトの名無しさん :2022/01/12(水) 14:32:06.61 ID:qWEJmmBb.net >>70 Windowsだけが異常なだけなんでは? 俺は本来しか知らないよ
76 :デフォルトの名無しさん :2022/01/12(水) 17:06:22.24 ID:MDxnZ/Jq.net >>75 そうなんだろうな。問題は、そこらじゅうにWindowsマシンがあるといこと。 サーバは Linux でも端末が Windows だとおかしい状態で表示されたりする。 (端末用のソフトやその設定次第ではあるが)
77 :デフォルトの名無しさん :2022/01/12(水) 18:28:08.05 ID:7zxmPeKt.net >>75 遭遇頻度で言えば、Windows以外のほうがレアだけどな!
78 :デフォルトの名無しさん :2022/01/26(水) 18:09:06.30 ID:m/HfztEH.net 子飼弾がyoutubeやってるって聞いたんで見てみた 老害オヤジみたいになっててなんだかなあ
79 :デフォルトの名無しさん :2022/02/16(水) 15:00:10.27 ID:kgKTrVeV.net 2020年にPerl5.32あたりと同じ内容で2021までにはPerl7がリリース予定 目立った機能追加もないからさすがにリリース余裕だろうと思っとんだがあの話しどうなったの? Perlコミュニティ機能してなくてそれすらなくなったとか?
80 :デフォルトの名無しさん :2022/03/29(火) 03:26:40.85 ID:d1B39DZ4.net 未だにperlでwebサイト作ってるとこあんの? 2chはperlらしいが
81 :デフォルトの名無しさん :2022/03/30(水) 15:15:52.21 ID:eA8ci9y2.net 2chはC言語では? 違ったっけ?
82 :デフォルトの名無しさん :2022/04/23(土) 16:12:18.71 ID:07cLvGHn.net ここにperl関係者いるかな? 連絡用のアカウント作るの面倒なんでここで報告。 perl5 で (?<name>\d{1}){0} がおかしい件 https://github.com/tonco-miyazawa/regex_etc/blob/master/MEMO_perl5/define_0times.txt perlrecharclass.pod の誤植 - perldoc.jp https://github.com/tonco-miyazawa/regex_etc/blob/master/MEMO_perl5/memo.txt
83 :デフォルトの名無しさん :2022/04/24(日) 18:45:33.05 ID:5imQEA1W.net >>79 亀だが外から見えるまとまった発表はないな。Steering Council もそれに気付いたから近々ブログ記事も出すと言ってる https://markmail.org/message/tqi446jfy42elhz5 まあ Perl 7 の変更点だった strict / warnings / feature 'signatures' のデフォルト有効化と feature qw/indirect multidimentional bareword_filehandles/ のデフォルト無効化は use feature ':5.36' に全部入ったから use v5.36 すれば実質 Perl 7 だ
84 :デフォルトの名無しさん :2022/08/11(木) 23:25:10.27 ID:LJKUJJ+3.net perlファイルに書かれている1行目の記述(#!/usr/local/bin/perl等)を変更せずに、 apacheでperlの参照先を変えたい(出来ればvirtualhost毎)のですが、やり方分かる方ませんか?
85 :デフォルトの名無しさん :2022/08/11(木) 23:37:59.40 ID:/k5aJ7yS.net それOSの力を借りないと無理なのでは?ApacheやPerlの問題ではないと思うが。 自分で /usr/local/bin/perl というスクリプトを作ってしまってそこで切り替えるみたいな誤魔化しで良いなら楽だと思うが。
86 :デフォルトの名無しさん :[ここ壊れてます] .net >>85 OSはUbuntu 20.04.4 LTS を使っています。 何か方法はないでしょうか?
87 :デフォルトの名無しさん :[ここ壊れてます] .net shebangを無視してファイルを実行するようなApacheモジュールを組み込んだらできるかも? そんなモジュールはきっと存在しないので、自作が前提だけど。w
88 :デフォルトの名無しさん :2022/08/20(土) 02:15:42.15 ID:GHxw2S4o.net >>87 shebangを使って出来るか試して見ますね
89 :デフォルトの名無しさん :2022/08/23(火) 18:46:04.59 ID:gaXbg1Nc.net Perlに限った話じゃないんだが、WSL1でubuntu 22.04を使うとWSL1上でgzipバイナリが動かないせいで、tar.gz関連処理が軒並みエラーになってしまう cpanでモジュールをダウンロードするとtar.gzの展開に失敗するのでなにもインストールできない 解決するには、gzipのソースをgnu公式からダウンロードしてビルド&インストールしてWSL1で動くgzipにパスが通るようにする必要がある
90 :デフォルトの名無しさん :2022/08/24(水) 00:32:00.18 ID:Ww6nM5wc.net >>84 試してないが mod_actions 噛ませば良いんでない? AddHandler my-perl-script .pl AddHandler cgi-script .cgi Action my-perl-script /cgi-bin/run-my-perl.cgi とかやって run-my-perl.cgi は #!/bin/sh /path/to/your/perl $PATH_TRANSLATED みたいな
91 :デフォルトの名無しさん :2022/08/25(木) 15:27:50.26 ID:bJn+zm7R.net 宇宙刑事 shebang
92 :デフォルトの名無しさん :2022/08/26(金) 18:50:05.53 ID:NQ4mbOjq.net >>84 Would you like #!/usr/bin/env perl or /your_favorite_perl_path perl_script
93 :デフォルトの名無しさん :2022/08/26(金) 20:12:41.13 ID:fCaJRqVr.net きまぐれでどれが呼ばれるか判らんものをよく使おうと思えるな
94 :デフォルトの名無しさん :2022/08/26(金) 20:37:01.58 ID:KXcMIUBJ.net gzはwin同梱のtarには付いて無いんか?
95 :デフォルトの名無しさん :2022/08/28(日) 05:40:04.80 ID:vrDCS1ZD.net >>94 PATH の通ったディレクトリに Windows 用の xz.exe を置いておくと tar の J オプションで展開してくれるようだが圧縮は対応していない模様。 圧縮は自分でパイプ通してやらないとできないみたい。何故そうなっているかは不明。
96 :デフォルトの名無しさん :2022/08/28(日) 05:40:40.65 ID:vrDCS1ZD.net あ、gz か。ごめん。xz と間違えた。
97 :デフォルトの名無しさん :2022/08/28(日) 05:42:29.29 ID:vrDCS1ZD.net あれ?でも gz (gzip) 圧縮なら tar cvfz でできたな。
98 :デフォルトの名無しさん :2022/12/23(金) 15:18:23.84 ID:yhR2datD.net perlに付属されているh2xsというツールを使ってモジュールを作成したいんですが、ディレクトリに移動に移動してコードを書く方法が分かりませんアドバイスお願いします。 ※Perl https://linuxcommand.net/perl-mod/#i-3
99 :デフォルトの名無しさん :2023/06/07(水) 16:24:29.96 ID:ywJ2sk66.net Perlのpackage内my変数についてちょっと疑問。 myはレキシカルな局所変数なので、他package内のmy変数は他のpackageからは参照できず、参照したければmy出なくourにすると解釈していたが。 packageが別々のソースファイルだった場合はその通りですっきりしたスコープ仕様だと思っていたが… ところが二つのpackageが同じソースファイル内にあり、他のpackageのmy変数を参照すると変な感じ: 例 use strict; use warnings; package P1; our $aa = __PACKAGE__.'aa'; my $bb = __PACKAGE__.'bb'; package P2; print __PACKAGE__ . "(1)$P1::aa\n"; print __PACKAGE__ . "(2)$aa\n"; print __PACKAGE__ . "(3)$P1::bb\n"; print __PACKAGE__ . "(4)$bb\n"; 実行結果 $ perl package_a_b.pl Name "P1::bb" used only once: possible typo at package_a_b.pl line 14. P2(1)P1aa P2(2)P1aa Use of uninitialized value $P1::bb in concatenation (.) or string at package_a_b.pl line 14. P2(3) P2(4)P1bb P2からはP1のmy $bbが$bbで参照できて、$P1::bb だとエラー、なんだこりゃ…??? ちな 5.36.0 と 530.0 で確認した。
100 :デフォルトの名無しさん :2023/06/07(水) 21:31:39.79 ID:w5fTdC21.net myはpackageとは何の関係もない packageにmyのシンボルテーブルはない だから(3)ではuninitialized value $P1::bbになる (4)は単なる文字列 正常な振る舞いだよ
101 :デフォルトの名無しさん :2023/06/07(水) 23:23:43.75 ID:ywJ2sk66.net >>100 回答ありがとう、myがそういうものだと今日まで知らずにいた…おrz
102 :デフォルトの名無しさん :2023/06/08(木) 00:48:41.98 ID:ZzDLFGD7.net myのスコープはブロック、ファイル、evalの3つ パッケージとは無関係だから>>99 ではファイルスコープになるね package P2でもう一度my $bb宣言したらエラーになることからも分かる
103 :デフォルトの名無しさん :2023/08/31(木) 14:27:49.36 ID:MOdj+pbjZ 岸田異次元増税憲法ガン無視地球破壊軍國主義文雄のテ゛タラメっぷりが炸裂してるな、子ども真ん中社會が嘘八百なんて子どもでも分かるわな 力による一方的な現状変更によって都心まで数珠つなぎで鉄道の30倍以上もの莫大な温室効果ガスまき散らすクソ航空機倍増させて、騒音で 勉強妨害して気侯変動させて地球破壊して子どもの未来を暗黒の世界にして熱中症で殺害、世界最悪の脱炭素拒否テロ国家に送られる化石賞を 連続受賞していながら、私利私欲のために莫大な税金泥棒して、莫大な温室効果ガスまき散らしてクソ航空機を乗り倒して世界中に脱炭素ガー た゛の嘘八百ほさ゛いてハ゛カ晒して.白々しくマッチポンプ丸出しで災害対策だのとバカの壁やら曰本中コンクリートまみれにして子と゛もの遊び場 破壊して溺死連発.利権倍増に増税、氣候変動であらゆるウイルス蔓延させて人殺して鶏卵価格やら物価暴騰、莫大な石油無駄に燃やす航空機 全廃すれは゛余裕で原發全廃できるものを原發稼働して全国放射能まみれを目指し、隣国挑発、軍事利権倍増、航空騒音で知的産業壊滅してる中 アプリのひとつも作れない分際でマイナンバカード推し進めて個人情報漏洩しまくり、漏洩した個人情報に一生害を受け続けるのが今の子と゛も (羽田)ttps://www.call4.jp/info.php?typе=items&id=I0000062 , Τtps://haneda-project.jimdofree.com/ (成田)ttPs://n-souonhigaisosуoudan.amеbaownd.com/ (テロ組織)ttps://i.imgur.com/hnli1ga.jpeg
104 :デフォルトの名無しさん :2024/02/23(金) 07:50:24.93 ID:3WpPBYhb.net あげ
105 :デフォルトの名無しさん :2024/04/14(日) 21:35:03.76 ID:byNUCOGR.net ローカルサーバーでsrandとrandで生成した乱数の値と レンタルサーバーでsrandとrandで生成した乱数の値が違うのは何で? どちらもsrandの値は同じとする。
106 :デフォルトの名無しさん :2024/04/15(月) 00:21:17.88 ID:9X9lvy+w.net このへんから探ってみては https://github.com/search?q=repo%3APerl%2Fperl5+rand&type=code 煽りじゃないよ しんどいので俺はここまで
107 :デフォルトの名無しさん :2024/04/15(月) 12:41:15.37 ID:cLz3iDP/.net プラットフォームのifdefで切り分けてそうだからそれっぽいマクロ定数でも探すといいかも
108 :デフォルトの名無しさん :2024/04/15(月) 17:29:37.18 ID:UgC/I+2W.net ビルドされた環境のCライブラリ依存じゃない? 同じにしたいならMath::Random::MTとか使えばいいんでね
109 :デフォルトの名無しさん :2024/04/16(火) 09:32:57.50 ID:Fr3sHPgG.net >>105 一般論としてPerlの内部実装は無保証でコロッコロ変わるので、疑似乱数の再現性を担保したいならコードを同梱してしまうのが最も確実 cでたったこれだけ、Perlで詰めれば20行も要らんだろう、局所使用ならファイル内subでいいレベル github.com/bmurray7/mersenne-twister-examples/blob/master/c-mersenne-twister.c 同階層にpl版もある 丁寧にコードされパッケ化で無意味に冗長なので参考ならこっち アルゴリズム特許あるか知らんし、ライセンスを許容するなら同梱
110 :デフォルトの名無しさん :2024/04/16(火) 14:14:10.10 ID:ipSHedtl.net print"A\n",print"B\n"; これの動き教えてくれよ 出来ればサンプルソースも
111 :デフォルトの名無しさん :2024/04/16(火) 15:16:06.51 ID:UEoqQOMp.net print "A\n", print "B\n"; print("A\n", print("B\n")); まず最初のprintの引数中のprint("B\n")が評価され"B\n"が出力される print("B\n")が成功したので真の値1を帰す print("A\n", 1)となる B A 1と表示される print "X\n", 3 > 0; print "X\n", 3 < 0; print "X\n", open(my $fh, "no_such_file.txt");
112 :デフォルトの名無しさん :2024/04/16(火) 15:37:42.78 ID:E/T1RXIg.net 成る程、() 使わない副作用意識しないとダメですね ありがとうございます
30 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver.24052200
本文 スレッドタイトル 投稿者