[過去ログ]
Perlについての質問箱 64箱目 (1002レス)
Perlについての質問箱 64箱目 http://mevius.5ch.net/test/read.cgi/tech/1548981877/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
532: 532 [sage] 2020/07/24(金) 23:35:26.56 ID:Z8MDOpZc Binary fileをupdateモードでopenして 目的の位置にseekしpackで元のファイルの内容を直接書き換える方法なら ttps://docstore.mik.ua/orelly/perl/cookbook/ch08_14.htm http://mevius.5ch.net/test/read.cgi/tech/1548981877/532
533: 532 [sage] 2020/07/24(金) 23:36:19.14 ID:Z8MDOpZc >>530 と内容が被った…orz http://mevius.5ch.net/test/read.cgi/tech/1548981877/533
534: 532 [sage] 2020/07/24(金) 23:40:56.85 ID:Z8MDOpZc この辺調べてやってくだされぃ https://www.google.co.jp/search?q=perl+binary+file+update+open+seek+unpack http://mevius.5ch.net/test/read.cgi/tech/1548981877/534
535: 532 [sage] 2020/07/24(金) 23:45:28.89 ID:Z8MDOpZc 先生ッ、便利そうなモジュール見つけました! https://metacpan.org/pod/File::Binary http://mevius.5ch.net/test/read.cgi/tech/1548981877/535
537: デフォルトの名無しさん [] 2020/07/24(金) 23:48:59.17 ID:JRbdBOQM >>532 親切にありがとうございます http://mevius.5ch.net/test/read.cgi/tech/1548981877/537
599: 532 [sage] 2020/07/29(水) 00:13:51.84 ID:gNILtmsT python, goなど他の言語もやってますが http://mevius.5ch.net/test/read.cgi/tech/1548981877/599
675: 532 [sage] 2020/08/18(火) 02:10:03.41 ID:B3TNMnkL perlのguiといえばTk, Tkx, wxWdget, Qt, GTK …色々あって やろうと思えばやれると思うけど。 オレはPerlではTk, Tkxしかやったこと無いけどさ http://mevius.5ch.net/test/read.cgi/tech/1548981877/675
684: 532 [sage] 2020/08/19(水) 01:09:23.66 ID:jnnRlfyg GUIのために言語を選ぶ? 少なくともperlにおいては、そんなことないだろJK http://mevius.5ch.net/test/read.cgi/tech/1548981877/684
755: 532 [sage] 2020/10/28(水) 08:36:56.65 ID:TnU9NEZC LWP::Protocol::https がインストールされていれば $url = "https://…"; require LWP::UserAgent; # with LWP::Protocol::https $ua = LWP::UserAgent->new; #$ua->agent('Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; Touch; rv:11.0) like Gecko'); $s = LWP::UserAgent->new->get($url)->content; http://mevius.5ch.net/test/read.cgi/tech/1548981877/755
765: 532 [sage] 2020/10/29(木) 00:33:18.30 ID:2QXtbAjf そもそも言葉がそういうものだろ だからかまわないというのは極論 というかそういう話もrubyも該当スレでやってくれ http://mevius.5ch.net/test/read.cgi/tech/1548981877/765
784: 532 [sage] 2020/10/30(金) 22:24:35.54 ID:QEBk4Q6j Perl5のParse::RecDescent.を使えれば Perl6のGrammarも大丈夫だと思う 多分 http://mevius.5ch.net/test/read.cgi/tech/1548981877/784
814: 532 [sage] 2020/12/06(日) 00:15:36.74 ID:1Uj+ZrCS print <<"eos"; @{[print "aaawww"]} eos $ perl aaawww.pl aaawww1 ;を省くと動くが、「1」とか余計なものがつくな http://mevius.5ch.net/test/read.cgi/tech/1548981877/814
829: 532 [sage] 2020/12/07(月) 21:57:48.14 ID:WG5ppFXF Time::Pieceの弱点は strptime()で作ったインスタンスのtimeゾーンをいじれないとこかな? 後1つなんか弱手あった気がするが忘れた http://mevius.5ch.net/test/read.cgi/tech/1548981877/829
874: 532 [sage] 2020/12/12(土) 00:28:14.42 ID:tTwN9OuS >>833 perlのsort()アルゴリズムは5,8以降マージソートになってsort結果は安定なアルゴリズムなので 手短にコードを書くなら右の数字でsortしてから左の数字でsortすれば所望の結果が得られる。以下サンプル実装 use List::Util 'shuffle'; %h = map{$_ => $i++} shuffle qw{1-1 1-2 1-3 2-1 2-2 2-3 3-1 3-2 3-3}; use feature qw{say signatures}; no warnings experimental; @k1 = keys %h; say "@k1"; sub f($s) { [$s =~ /(\d+)/g, $s]}; @k2 = map{$$_[2]} sort{$a->[0] <=> $b->[0]} sort{$a->[1] <=> $b->[1]} map{f $_} @k1; say "@k2"; 実行結果 ~ $ perl 64_833_n-n_sort_1.pl 1-1 2-3 3-3 1-2 3-1 2-2 2-1 1-3 3-2 1-1 1-2 1-3 2-1 2-2 2-3 3-1 3-2 3-3 言語処理系内部のsort()関数のアルゴリズムに依存しない書き方がしたいなら 左と右の数値で二段階のソートをするか、右の数字と左の数値で順位に一貫性のあるキーを作って 一段階のソートで済ませる方法もあると思う。 そういったサンプル実装を見たいのであれば、時間があればくけれども… http://mevius.5ch.net/test/read.cgi/tech/1548981877/874
875: 532 [sage] 2020/12/12(土) 00:42:28.87 ID:tTwN9OuS つか、実は Tie::IxHash を使ってhashに登録したデータの順番を維持して取り出せれば いいだけの話だったりしてな。しらんけど http://mevius.5ch.net/test/read.cgi/tech/1548981877/875
877: 532 [sage] 2020/12/12(土) 00:48:12.17 ID:tTwN9OuS >>849 おっとここに十分な解答があったわw http://mevius.5ch.net/test/read.cgi/tech/1548981877/877
883: 532 [sage] 2020/12/12(土) 10:42:34.69 ID:+ekv//0b >>833 >>874に書いた左の数字と右の数値両方で順位に一貫性のあるキーを作って一回でsortするサンプル 数値は4桁以下であることを仮定してます。 use List::Util 'shuffle'; %h = map{$_ => $i++} shuffle qw{1-1 1-2 1-3 2-1 2-2 2-3 3-1 3-2 3-3}; @k1 = keys %h; print "@k1\n"; @kk = map{[sprintf("%4d%4d", /(\d+)/g), $_]} @k1; @k2 = map{$$_[1]} sort{$$a[0] cmp $$b[0]} @kk; print "@k2\n"; http://mevius.5ch.net/test/read.cgi/tech/1548981877/883
884: 532 [sage] 2020/12/12(土) 10:47:43.50 ID:+ekv//0b こうやって幾つかコード書いてみて…>>849かTie::IxHashで十分な気がしたわw http://mevius.5ch.net/test/read.cgi/tech/1548981877/884
917: 532 [sage] 2021/01/25(月) 02:03:08.62 ID:NGykvctj ttps://perlcodesample.hateblo.jp/entry/2020/07/10/082720 http://mevius.5ch.net/test/read.cgi/tech/1548981877/917
963: 532 [sage] 2021/03/09(火) 00:11:34.07 ID:jxvXMO9/ $^WIN32_SLOPPY_STAT じゃね? File::FindはWindowsだと、SJISで全角「構」などの2バイト目が\(0x5c)のフォルダに遭遇すると 無限loopしたり誤動作するから、結局Wndowsでフォルダ階層を再帰的にたどるには utf8化したperl sourceで自分でopendir, readdirして、encode, decodeせにゃならん。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/963
964: 532 [sage] 2021/03/09(火) 00:15:08.81 ID:jxvXMO9/ 別件だがWindowsではSJISで全角「構」などの2バイト目が\(0x5c)のフォルダには perlからlstatやutimeが出来ないみたいで難儀した。 Linuxのutf8のファイルシステムと違ってWindowsのSJISファイルシステムは面倒 http://mevius.5ch.net/test/read.cgi/tech/1548981877/964
970: 532 [sage] 2021/03/09(火) 08:45:38.83 ID:UTQZC5u1 NTFSってUTF-16だったのか、 しかしperlのreaddirはcp932で返してきているような気がs… http://mevius.5ch.net/test/read.cgi/tech/1548981877/970
986: 532 [sage] 2021/03/11(木) 11:39:56.33 ID:AlcqB+X5 $pat = 'hoge(?:,.*)?$'; print "1\n" if 'hoge,dsad' =~ $pat; print "2\n" if 'hoge' =~ $pat; print "3\n" if 'hage' =~ $pat; はどうよ 実行例 ~ $ perl 64_976_hoge_pat.pl 1 2 http://mevius.5ch.net/test/read.cgi/tech/1548981877/986
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.050s