[過去ログ]
Perlについての質問箱 64箱目 (1002レス)
Perlについての質問箱 64箱目 http://mevius.5ch.net/test/read.cgi/tech/1548981877/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
386: デフォルトの名無しさん [] 2020/03/28(土) 23:25:40.33 ID:7nefda3x 色んなパターンで? grep -f でパターン読ませてやるのと同じか? http://mevius.5ch.net/test/read.cgi/tech/1548981877/386
387: デフォルトの名無しさん [sage] 2020/03/29(日) 09:15:52.43 ID:9AyQFVoq 素の Perl は NFA だけだから、どうしても速度的には不利になる。 パターンが250もあるなら尚更だ。 grep との差はPerl と C の差はもちろんあるだろうが DFA でできるパターンなら、その差が大きいと思う。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/387
388: デフォルトの名無しさん [sage] 2020/03/29(日) 09:42:19.51 ID:aacnUCYv linuxだったら素直にgrep呼べばいいだけだけど、 windowsだと素性が良くて高速なgrepを探すところでまず困難がある さらに、grepに引数を渡すところにもエスケープ文字の困難があって、 結果の受け取りにも文字コードの困難が http://mevius.5ch.net/test/read.cgi/tech/1548981877/388
389: デフォルトの名無しさん [sage] 2020/03/29(日) 17:43:38.29 ID:9AyQFVoq そういえば awk は DFA じゃなかったかな。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/389
390: デフォルトの名無しさん [sage] 2020/03/30(月) 00:14:28.89 ID:mvvN5DTM perl の Memoize は関数全体に掛けるようですが、 ruby の @memo、javascript の memo の変数に掛けるのは新し目の使い方でしょうか http://mevius.5ch.net/test/read.cgi/tech/1548981877/390
391: デフォルトの名無しさん [] 2020/03/30(月) 04:32:31.95 ID:PdZ6Klrm >>388 WSLのUbuntuだとどうなのだろうか? あれ遅い? http://mevius.5ch.net/test/read.cgi/tech/1548981877/391
392: デフォルトの名無しさん [sage] 2020/03/30(月) 08:35:14.72 ID:3FWyQXw7 NFA でなければならない理由がないなら DFA にするだけで速度 1000 倍は堅いかも。 でも Perl のままでも正規表現のチューニングは可能だ。まだやってないならね。 実際に使ってるパターンを見せてもらわないことにはなんとも言えないが。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/392
393: デフォルトの名無しさん [sage] 2020/03/31(火) 12:53:45.32 ID:GaEXrIp5 >>388 普通にWSLを使えばいいだけでは? http://mevius.5ch.net/test/read.cgi/tech/1548981877/393
394: デフォルトの名無しさん [sage] 2020/03/31(火) 22:24:02.97 ID:Z+pFaYZ2 win8.1のサポートが終わった頃に思い出したら使ってみよう http://mevius.5ch.net/test/read.cgi/tech/1548981877/394
395: デフォルトの名無しさん [sage] 2020/04/22(水) 13:25:13.88 ID:gkB+0fgm @array = ($str =~ /(PAT1).+?(PAT2).+?(PAT3)/g); みたいにすると、パターン3つ分が配列に入るけど、他にもマッチするとそれも続けて入る できれば2次元配列になって欲しい そんな技はある? http://mevius.5ch.net/test/read.cgi/tech/1548981877/395
396: デフォルトの名無しさん [sage] 2020/04/22(水) 18:47:25.28 ID:WLkEu+yG そういうことをする時のセオリーはスカラコンテキストで $str =~ /\G$pat/g http://mevius.5ch.net/test/read.cgi/tech/1548981877/396
397: デフォルトの名無しさん [sage] 2020/04/22(水) 19:29:55.51 ID:gkB+0fgm 可能? $str = '1a2b3c1x1d2e3f1g2h3i'; を与えられて [[a, b, c], [d, e, f], [g, h, i]] を得るにはどうすれば http://mevius.5ch.net/test/read.cgi/tech/1548981877/397
398: デフォルトの名無しさん [sage] 2020/04/22(水) 20:38:21.44 ID:f6F85tCk my @arr = (); while ($str =~ /\G.+?([a-z]).+?([a-z]).+?([a-z])/g) { push @arr, [$1, $2, $3]; } http://mevius.5ch.net/test/read.cgi/tech/1548981877/398
399: デフォルトの名無しさん [sage] 2020/04/22(水) 20:54:42.93 ID:gkB+0fgm [[a, b, c], [x, d, e], [f, g, h]] になっとるよ http://mevius.5ch.net/test/read.cgi/tech/1548981877/399
400: デフォルトの名無しさん [sage] 2020/04/22(水) 20:56:31.77 ID:gkB+0fgm でも判った 普通に$1使えばいいだけか 結果を一つずつスカラに取るんだと思ってた http://mevius.5ch.net/test/read.cgi/tech/1548981877/400
401: デフォルトの名無しさん [sage] 2020/04/22(水) 21:01:22.02 ID:gkB+0fgm /\G.*?1(.)2(.)3(.)/g これがやりたかったこと http://mevius.5ch.net/test/read.cgi/tech/1548981877/401
402: デフォルトの名無しさん [sage] 2020/04/22(水) 21:27:03.82 ID:gkB+0fgm 結局コードはあんまり変わらなくて、ループで push @array, ($1, $2, $3) にするか、後で splice(@elements, 0, 3) を使っていくかの違い パターンを3つから4つに増やした時に、 $4を追加するか、3を4に増やすかのメンテはやっぱり必要 いきなり2次元配列が得られるスマートさからは劣る http://mevius.5ch.net/test/read.cgi/tech/1548981877/402
403: デフォルトの名無しさん [sage] 2020/04/22(水) 21:30:34.59 ID:WLkEu+yG どうやら今回は必要ないみたいだけど事前にグループの個数が 判らないという前提なら @- とか見ればいい。 あるいはグループに名前を付けて %+ を使えばいい。 全部ここに書いてあるよ。 https://perldoc.jp/pod/perlretut http://mevius.5ch.net/test/read.cgi/tech/1548981877/403
404: デフォルトの名無しさん [sage] 2020/04/22(水) 21:32:10.06 ID:f6F85tCk Perlで、とある配列を指定した要素数ごとに別の配列リファレンスに分割する処理をList::MoreUtilsモジュールで書き直してみた https://perl48.hatenablog.com/entry/2018/08/19/005304 http://mevius.5ch.net/test/read.cgi/tech/1548981877/404
405: デフォルトの名無しさん [sage] 2020/04/22(水) 23:57:47.29 ID:WLkEu+yG 名前を付けるような性格のものじゃなくて個数が変わる可能性があるなら 個数だけ与えてパターンを組み立てればいいよ。 $1,$2 とか書かなくても map { ${$_}} 1 .. $n で同じことができるし。 リストコンテキストで配列に入れてから splice する方がいいと思うならそうすればいい。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/405
406: デフォルトの名無しさん [sage] 2020/04/23(木) 08:13:25.78 ID:7CKy0JPC 目指すのは、個数がいくつなのか人間が把握しなくていいコード http://mevius.5ch.net/test/read.cgi/tech/1548981877/406
407: デフォルトの名無しさん [sage] 2020/04/23(木) 08:30:38.98 ID:IlZrBGCM できるでしょ。自分がスマートになってスマートなコードを書けばいい。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/407
408: デフォルトの名無しさん [sage] 2020/04/23(木) 12:10:21.89 ID:2vqGx7d4 完全に数値って決まってるんなら、俺ならsplit使っちゃうな @a = split /\d/, $str; まあこんな単純な話じゃないんだろうけど http://mevius.5ch.net/test/read.cgi/tech/1548981877/408
409: デフォルトの名無しさん [sage] 2020/05/01(金) 10:49:51.92 ID:baJ3Dlo6 activeperlで $res = `exefile $file`; みたいなことをした時に、 コマンドプロンプトからスクリプトを起動するとちゃんと動く でも、スクリプトをランチャーから起動するとno such fileになる ファイル名が英数ならどちらもok 2byte文字が混じると挙動が変わる 起動の仕方によってパスの取り扱いとか変わる? http://mevius.5ch.net/test/read.cgi/tech/1548981877/409
410: デフォルトの名無しさん [sage] 2020/05/01(金) 12:19:28.98 ID:baJ3Dlo6 あ、違う 2byte文字ではなくドライブの違いだった ネットワークドライブにあるとアクセスできない コマンドプロンプトからならできる http://mevius.5ch.net/test/read.cgi/tech/1548981877/410
411: デフォルトの名無しさん [sage] 2020/05/01(金) 13:08:35.22 ID:baJ3Dlo6 結局、ランチャーに管理者権限が付いてるのが原因 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System EnableLUA 1 -> 0 これで解決する perl関係ない http://mevius.5ch.net/test/read.cgi/tech/1548981877/411
412: デフォルトの名無しさん [sage] 2020/05/01(金) 13:13:09.83 ID:9YL7RFP8 ランチャー自身か、ランチャーの起動方法がよくないんやろ。 ネットワークドライブの認証(ログオン)かそのタイミングがあやしい。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/412
413: デフォルトの名無しさん [sage] 2020/05/01(金) 13:13:40.55 ID:9YL7RFP8 あら、自己解決? http://mevius.5ch.net/test/read.cgi/tech/1548981877/413
414: デフォルトの名無しさん [sage] 2020/05/10(日) 19:19:00.31 ID:gcVsfbhd 質問させてください。 WindowsでActivePerlを使っています。 perl で、あるファイルを、関連付けられたアプリケーションで開く には、どのようにすればよろしいでしょうか? 例えば、xx_system('foo.txt') のようにすると、'.txt'に 関連つけられたアプリケーションで、'foo.txt'を開くような 動作を実現したいのですが。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/414
415: デフォルトの名無しさん [sage] 2020/05/10(日) 21:12:47.84 ID:04IHVppx system(1, 'foo.txt'); http://mevius.5ch.net/test/read.cgi/tech/1548981877/415
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 587 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.012s