[過去ログ]
Perlについての質問箱 64箱目 (1002レス)
Perlについての質問箱 64箱目 http://mevius.5ch.net/test/read.cgi/tech/1548981877/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
899: デフォルトの名無しさん [] 2020/12/27(日) 18:10:18.92 ID:pJIjrBUp ローカルで一番最初にperlの呼び出しの部分は#!c:/Perl/bin/perl.exeって書くけど サーバーに上げるときは毎回#!/user/local/perlというように書き直すのがめんどうだけど #!/user/local.perlのまんまでもローカルで動かす方法ありますか? http://mevius.5ch.net/test/read.cgi/tech/1548981877/899
900: デフォルトの名無しさん [sage] 2020/12/27(日) 19:39:12.76 ID:CEWAcbKQ あれ? /usr/local/perlのままでもいけるんじゃないの? Windowsはそこのパスを見てなかったような。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/900
901: デフォルトの名無しさん [sage] 2020/12/27(日) 19:46:23.03 ID:/HQdSjMP Apacheは見てる そんでApacheのあるドライブにuser/localのフォルダ作ってperl.exeをコピーしたら動くよ http://mevius.5ch.net/test/read.cgi/tech/1548981877/901
902: デフォルトの名無しさん [sage] 2020/12/27(日) 21:30:33.15 ID:CEWAcbKQ そうだっけか? ちなみに、もしそのファイルに拡張子があるならレジストリで指定する方法もある。 「windows apache レジストリ 拡張子」で検索! http://mevius.5ch.net/test/read.cgi/tech/1548981877/902
903: デフォルトの名無しさん [sage] 2020/12/28(月) 00:11:42.69 ID:oUNoRxKm perlプログラム中に指定するルートパスについてだけど open(IN,"/test.html"); my @lines = <IN>; print "@lines"; close(IN); とやっても@linesは空で何も取得できなかったけど print "<a href=\"/test.html\">リンク</a>"; でリンクをクリックするとちゃんとドキュメントルート直下のtest.htmlに飛べる これはどうしてか? test.htmlの中身は空ではない http://mevius.5ch.net/test/read.cgi/tech/1548981877/903
904: デフォルトの名無しさん [sage] 2020/12/28(月) 00:28:09.86 ID:AD+30T3D >>903 ファイルシステムのルートとドキュメントルートはまったく異なる。 ファイルシステムはプログラム自身が処理するが、URLはまずブラウザが解釈する。 まず落ち着いてよく考えろ。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/904
905: デフォルトの名無しさん [] 2020/12/28(月) 08:24:52.02 ID:oUNoRxKm >>904 つまりperlプログラム中で指定する/test.htmlはファイルシステムのルートパスになり リンクタグで指定する/test.htmlはドキュメントルートのパスになるということですか? http://mevius.5ch.net/test/read.cgi/tech/1548981877/905
906: デフォルトの名無しさん [sage] 2020/12/28(月) 08:37:46.11 ID:9b76uWwh ドキュンルート http://mevius.5ch.net/test/read.cgi/tech/1548981877/906
907: デフォルトの名無しさん [sage] 2020/12/28(月) 21:50:36.57 ID:gLlPtDZl >>905 わかってるやん レスコジキなら他に行ってくれ http://mevius.5ch.net/test/read.cgi/tech/1548981877/907
908: デフォルトの名無しさん [sage] 2020/12/30(水) 20:09:27.64 ID:ygO1FIcm 過疎ってる方が落ち着くという人もいるらしい http://mevius.5ch.net/test/read.cgi/tech/1548981877/908
909: デフォルトの名無しさん [sage] 2020/12/30(水) 20:26:20.53 ID:ZDzqqnZf 初心者が嫌いな「上級者」で過疎っているほうが落ち着くなら、このスレがいいな。 【Perl上級者コーナーPart01】 https://medaka.5ch.net/test/read.cgi/php/1024741312/ http://mevius.5ch.net/test/read.cgi/tech/1548981877/909
910: デフォルトの名無しさん [sage] 2020/12/30(水) 21:55:58.30 ID:Fpo/gio8 >>907 わかってるとはいえんよ。 結果のおうむ返しだけみたいだからな。 落ち着いて考えればわかるはずだし、それでしっかり納得したほうがいいことだから、元コメに返事はしないが。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/910
911: デフォルトの名無しさん [sage] 2021/01/03(日) 17:25:22.42 ID:Lv3VCxJc ブラウザのクッキーを許可してるかどうかを調べるにはどうしたらいいんですか? クッキーを書き込めたら許可されているというやり方だと 書き込んだ直後はクッキー読み取れない 更新ボタンでページを更新しないとクッキー読み取れないので他のやり方で http://mevius.5ch.net/test/read.cgi/tech/1548981877/911
912: デフォルトの名無しさん [sage] 2021/01/03(日) 17:33:27.51 ID:qCTYrijY お、今年初めの質問だね。 君の悩みは質問箱住人が解決するよ。 ささ、甘酒どぞ。つ甘 みんなーお客さんだよー。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/912
913: デフォルトの名無しさん [sage] 2021/01/03(日) 19:13:07.92 ID:fvS6UGyp >>911 javascript併用したくないならHTTPヘッダで print "Set-Cookie: hoge\n"; print "Location: hage\\n\n"; みたいな感じでクッキー書いてリダイレクトすればいいんじゃね http://mevius.5ch.net/test/read.cgi/tech/1548981877/913
914: デフォルトの名無しさん [] 2021/01/03(日) 20:53:05.77 ID:Lv3VCxJc >>913 なるほど、でもそれ無限ループにならないっすか? http://mevius.5ch.net/test/read.cgi/tech/1548981877/914
915: デフォルトの名無しさん [sage] 2021/01/03(日) 21:41:10.96 ID:Y2yZ564Q >>914 サーバーで判定したらええやろ。 そもそもそういう話のはず。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/915
916: デフォルトの名無しさん [sage] 2021/01/03(日) 21:44:24.27 ID:fvS6UGyp >>914 クエリパラメータ追加するなり工夫すれ http://mevius.5ch.net/test/read.cgi/tech/1548981877/916
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
918: デフォルトの名無しさん [sage] 2021/02/13(土) 20:39:32.56 ID:puXqs/bZ U+10000からU+1FFFFまでの文字があったら置換したい時はどう書けばいい? http://mevius.5ch.net/test/read.cgi/tech/1548981877/918
919: デフォルトの名無しさん [sage] 2021/02/13(土) 20:57:13.59 ID:aGYlIUX0 >>918 s/U¥+(1¥x{4})/pack(q{U},$1)/eg とかか? https://perldoc.jp/docs/perl/5.10.0/perluniintro.pod http://mevius.5ch.net/test/read.cgi/tech/1548981877/919
920: デフォルトの名無しさん [sage] 2021/02/13(土) 21:54:38.37 ID:puXqs/bZ あー U+10000という文字列を置換したいのではなく、それが示すサロゲートペアを置換したい http://mevius.5ch.net/test/read.cgi/tech/1548981877/920
921: デフォルトの名無しさん [sage] 2021/02/14(日) 01:36:58.65 ID:u5RUQBwf >>920 s/([¥x{10000}-¥x{1ffff}])/unpack(q{U},$1)/eg かな? ダメな気もするが。 つーか、さっきのURLにいろいろ書いてあるから、一度目を通して自分で試してみろ。 んで、うまくいったら、結果を貼るようにな。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/921
922: デフォルトの名無しさん [sage] 2021/02/14(日) 07:32:21.90 ID:kRUK3Bbl $line =~ s/\x{1f306}/置/g; これは成功する $line =~ s/\x{1....}/置/g; こんなことをやろうとしてた $line =~ s/[\x{10000}-\x{1ffff}]/置/g; これが正解だった http://mevius.5ch.net/test/read.cgi/tech/1548981877/922
923: デフォルトの名無しさん [sage] 2021/02/14(日) 10:00:12.81 ID:yrV2Bu9C Perlの場合、マルチバイト文字で正規表現を正しく使うには、あらかじめEncode::decode()でデコードしておく必要があるので厄介。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/923
924: デフォルトの名無しさん [sage] 2021/02/14(日) 11:18:28.10 ID:u5RUQBwf >>923 Perlに限らんやろ。 エンコーディングをまったく気にせず対応している処理系なんか存在しない。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/924
925: デフォルトの名無しさん [] 2021/03/03(水) 18:48:52.48 ID:Q9ky3RP3 start:aaa1 end:bbb1 value:1.23 start:aaa2 end:bbb2 value:2.34 … データとして上記のようなstart,end,value値が違うデータがだらっと繰り返ししてるファイルがあって 下記の正規表現で名前付きキャプチャを使って繰り返しマッチングし%+ハッシュを配列に格納したいのですが、こんな感じでやるとそれぞれのデータが順に入ってしまいます。 どう書けばマッチングした各ハッシュを配列に格納出来るのでしょうか? $re=qr|start:(?<start>\S+).*?end(?<end>\S+).*?value:(?<value>\S+)$|sm; my @data = m|$re|g =~ $txt; http://mevius.5ch.net/test/read.cgi/tech/1548981877/925
926: デフォルトの名無しさん [sage] 2021/03/03(水) 20:20:14.74 ID:DgitZS9x 正規表現を使うところではない気がするな。w ちょっとおちついて、行単位で処理していけよ。 http://mevius.5ch.net/test/read.cgi/tech/1548981877/926
927: デフォルトの名無しさん [] 2021/03/03(水) 23:36:11.18 ID:Q9ky3RP3 >>926 そういうもんなんですか? pythonだとre.finditerでイタレータ毎に取れるので似たような感じにperlでもどうにか出来るんだろうと思ったのですが無理そうなら諦めます http://mevius.5ch.net/test/read.cgi/tech/1548981877/927
928: デフォルトの名無しさん [sage] 2021/03/04(木) 00:03:04.76 ID:ls8aTj6l Ruby なら、 line_num = 0 # 行番号 # 行末の改行を削除して、1行ずつ処理する results = File.foreach( "test154_data.txt", chomp: true ).with_object( [ ] ) do |line, accm| line_num += 1 # 3行毎に、ハッシュを作って、蓄積変数に追加する accm.push Hash.new if line_num % 3 == 1 ary = line.split( ':', 2 ) # 左からコロンで、2つに分割する hash = accm.last # 最後の要素 hash[ ary[ 0 ] ] = ary[ 1 ] end p results 出力 [{"start"=>"aaa1", "end"=>"bbb1", "value"=>"1.23"}, {"start"=>"aaa2", "end"=>"bbb2", "value"=>"2.34"}] http://mevius.5ch.net/test/read.cgi/tech/1548981877/928
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 74 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.013s