Perl

全6053件中101~120件表示
  • perlのopen()で+<を使用した時の挙動が変

    open()で+<を使用すると読み書き両方ができると 理解しましたが、書き込んだ後の結果が 私が思っていた挙動と違っていました。 例えば、 ---test.pl-------------------------- open(FILE,'+<test.txt') or die "$!"; my $line=<FILE>; print FILE "ABC\n"; close(FILE); ---test.txt---- 123 456 789 --------------- を実行すると ---test.txt---- 123 ABC 789 --------------- となることを期待していましたが実際には ---test.txt---- 123 456 789 123 ABC ---------------- となっていました。 1行だけ読み出したときのファイルポインタ は2行目の先頭を指しているように思われますが なぜこのような結果になるのでしょうか。 (Windows7,ActivePerl)

    • ベストアンサー
    • yam2012
    • Perl
    • 回答数2
  • Perl 文字間に¥を入れ文字化けを防ぎたい

    いつもお世話になっております。 ご教示お願い致します。 まず下記のソースがあり、 my $TEXT = "<font color=green>これは表示テスト結構"; $TEXT =~ /\Q${TEXT}\E/; $TEXT =~ s/<[^>]*>//g; print qq($TEXT\n); タグを消すソース「$TEXT =~ s/<[^>]*>//g;」これは動いています。 しかし、文字間にバックスラッシュをたすソース「$TEXT =~ /\Q${TEXT}\E/;」 が、きいていないのか、間違っているのかがわからないです。 my $TEXT = "<font color=green>これは表\示\テスト結\構\"; このようにすれば単純にできますが、 正規表現?エスケープシーケンス?での実行をしたいです・・・ どうかお力添えをお願い致します!

    • ベストアンサー
    • Cells231
    • Perl
    • 回答数1
  • Perl ブログ等の記事の編集

    記事の編集について教えてください。 ブログ等の記事を書き込むまではできました。 そこで、書き込んだ後に、記事を編集・修正をしたいと思い ソースを考えているのですが、 わからなくなりました。 お力添えをお願い致します。 #log.txt 1,test1,name1,text1 2,test2,name2,text2 3,test3,name3,text3 4,test4,name4,text4 5,test5,name5,text5 open(FILE, "<$FILE") or die("error :$!"); eval{ flock(FILE, 1) }; @DATA = <FILE>; close FILE; #記事表示 for ($i=0;$i<5;$i++){ last if ($i > @DATA); $data = $DATA[$i]; if ($data ne ""){ my ($category,$title,$name,$text) = split(/,/, $data); print qq(<input type="radio" name="no" value="%02d">$category - $title - $name - $text\n), $i; print qq(<input type="submit" name="edit" value="編集">\n); print qq(<input type="submit" name="delete" value="削除">\n); } } そこで、radioボタンを選択し、 submit「編集」をクリックすると radioボタンで選択されている行のデータを取り出し 修正をするということをしたいのですが、どのようにすればいいでしょうか? 今回の求めている結果ですと log.txtの3行目を取り出し 3,test3,name3,text3 ↓ 3,hen3,kou3,henkou3 にして 最終的なlog.txtは 1,test1,name1,text1 2,test2,name2,text2 3,hen3,kou3,henkou3 4,test4,name4,text4 5,test5,name5,text5 というふうにしたいです。 よろしくお願いいたします。

    • ベストアンサー
    • Cells231
    • Perl
    • 回答数3
  • perlの論理演算子の「and」と「&&」の違い

    perlの論理演算子の「and」と「&&」の違いは、 「弱い結合」と「強い結合」とかで説明されている のを見かけますが、これは、 「短絡評価」(左側が偽だと右側が実行されない)と 「短絡評価でない」(左側の真偽に関係なく右側が実行される) のと同じ意味になるのでしょうか。 例えば、 sub x {  print "sub x\n";  return 0; } sub y {  print "sub y\n";  return 1; } の2つのサブルーチンがある場合に、 (1) if(&x==1 and &y==1){    print '真',"\n";   } else {    print '偽',"\n";   } (2) if(&x==1 && &y==1){    print '真',"\n";   } else {    print '偽',"\n";   } を、実行した場合、サブルーチンyは、 (1)では実行されず、(2)では実行される という理解で正しいでしょうか。 (実際にはどちらも実行されていないようなのですが)

    • ベストアンサー
    • yam2012
    • Perl
    • 回答数3
  • perlで検索 カンマ n番目

    ~log.txt~ 1,a,w,e,r 2,a,w,e,r 2,e,a,v,ssss 3,s,ssss,a,a $FILE = 'log.txt'; $Search = 'sss'; ~Search.pl~ open(FILE, "<$FILE") or die("error :$!"); eval{ flock(FILE, 1) }; @DATA = <FILE>; close FILE; $a = 0; my @Search = grep(/$Search,/, @DATA); while (<@Search>) { $a++; } print "@Search\n"; このようなデータで 検索ワード=sssのとき ヒットするのが 2,e,a,v,ssss 3,s,ssss,a,a [0][1][2][3][4] この2つです。 ここまではいいのですが、 2番目のsssのみを取り出したいとき my @Search = grep(/$Search,/, @DATA); ここをどのように変えればいいのでしょうか・・・?

    • ベストアンサー
    • Cells231
    • Perl
    • 回答数3
  • リンクをクリックで複数のテキストボックスに文字入力

    リンクをクリックすると、リンク先のページの複数のテキストに値が入るようなしくみがないか探しています。日付を例として、別にあるカレンダーから日付をクリックすると、リンク先ページ(hiduke.html)が開き、カレンダーから出力された yy、mm、dd が、hiduke.htmlのyy、mm、dd に自動で入力されると言う具合です。 カレンダーからの日付の入ったリンク(a href="hiduke.html?yy=2017&mm=3&dd=2”)の出力まではできたのですが、hiduke.htmlのページは開けても、 yy、mm、ddのそれぞれのテキストボックスに日付を自動記入ができません。 できれば、その部分(機能)だけのサンプルプログラムがあると助かります。 受け側はhtmlではなく、cgi(例:hiduke.cgi)でも結構です。 よろしくお願い致します。

  • perl use strict エラーにならない?

    perlの使い方を勉強しているのですが use strict;を記述すると 変数宣言が必要になるということですが 以下のように記述してもエラーになりません。 use strict;を記述すると my $a;がないと$a="Hello";で エラーになるのではないのでしょうか。 ---test.pl---- use strict; $a="Hello"; print $a; -------------- >test.pl Hello > (Windows7, ActivePerl)

    • ベストアンサー
    • yam2012
    • Perl
    • 回答数2
  • Perl テキスト ブログ

    ホームページにブログを設置を考えています。 どうかご教示お願い致します。 今考えていることは サイドにある記事のカテゴリ別や最新順といったものを表示することです。 最新順はできたのですが、 カテゴリ別が、うまいこといかないです。 テキストファイル内は No(カテゴリ),日付,タイトル,本文,画像名 となってます open(IN,$FILE); @DATA = <IN>; close IN; で$FILEを開き そこから、 カテゴリ別の(No.1の場合) $a = 0; my @match = grep(/^1,/, @DATA); while (<@match>) { $a++; } でカテゴリ1に絞込 カテゴリ1の合計値と元あった行Noを 求めたいのですが、 どのようにすればいいのでしょうか?

  • Perl BBS掲示板 サーバ側のファイル削除

    いつもお世話になっております。 サーバ側のファイルを削除したいのですが、 どのようにすればいいのでしょうか・・・? #-----------------------------------------DELETE sub deletedata { use CGI; my $form = new CGI; my $tm = time; my $DELETE = $form->param('pass'); my $NO = $form->param('no'); my $NAME = TransFormdata($form->param('name')); my $TITLE = TransFormdata($form->param('title')); my $TEXT = TransFormdata($form->param('text')); my $img = TransFormdata($form->param('img')); open(FILE, "<$FILE") or die("error :$!"); eval{ flock(FILE, 1) }; @DATA = <FILE>; close FILE; my $DELETE = $form->param('pass'); my $NO = $form->param('no'); if(length $NO == 0) {} elsif($DELETE eq $PASSWORD) { deleteImg($NO); splice @DATA, $NO, 1; } else{} open(FILE, ">$FILE") or die("error :$!"); eval{ flock(FILE, 2) }; print FILE @DATA; close FILE; &endform } #-----------------------------------------DELETE #-----------------------------------------UPFILEDELETE sub deleteImg { my ($NO,$tm,$NAME,$TITLE,$TEXT,$imgname) = split(/,/, $DATA[$_[0]]); $filename = $DIR . $imgname; if(-e $imgname) { unlink $filename; } } #-----------------------------------------UPFILEDELETE ラジオボタン選択 ↓ パスワード入力 ↓ 削除ボタン ↓ 削除 この段階で テキストファイルの指定行は削除されているのですが、 画像が投稿され、サーバー側に残っているファイルも削除させたいのです。 Unlinkを使うとなっていたのですが・・・わからないです。 どうかご教示お願い致しますm(;;)m

  • Perl BBS 掲示板 改行処理

    改行処理について教えてください。 今まで書き込み処理で unshift @DATA, "$tm,$FORM{'name'},$FORM{'title'},$FORM{'text'}\n"; としていたのですが、これを use CGI; my $form = new CGI; my $NAME = $form->param('name'); my $TITLE = $form->param('title'); my $TEXT = $form->param('text'); unshift(@DATA,"$tm,$NAME,$TITLE,$TEXT\n"); に変更しました。 すると sub loadFormdata が聞かなくなり、 改行処理他が対応しなくなってしまいました、 この場合、 loadFormdataの部分のどこを変えればよいでしょうか? |------書き込み処理------| sub printdata{ use CGI; my $form = new CGI; &loadFormdata(); open(FILE, "<$FILE"); eval{ flock(FILE, 1) }; @DATA = <FILE>; close FILE; my $tm = time; my $NAME = $form->param('name'); my $TITLE = $form->param('title'); my $TEXT = $form->param('text'); unshift(@DATA,"$tm,$NAME,$TITLE,$TEXT\n"); while(@DATA > $MAX) { pop @DATA; } open(FILE, ">$FILE") or die("error :$!"); eval{ flock(FILE, 2) }; print FILE @DATA; close FILE; } |------改行処理他------| sub loadFormdata { my ($query, $pair); if($ENV{'REQUEST_METHOD'} eq 'POST') { read(STDIN, $query, $ENV{'CONTENT_LENGTH'}); } else { $query = $ENV{'QUERY_STRING'}; } foreach $pair (split(/&/, $query)) { my $key = ("$NAME,$TITLE,$TEXT"); my ($key, $value) = split(/=/, $pair); $value =~ tr/+/ /; $value =~ s/%([0-9a-fA-F][0-9a-fA-F])/chr(hex($1))/eg; $value =~ s/&/&amp;/g; $value =~ s/</&lt;/g; $value =~ s/>/&gt;/g; $value =~ s/\x0D\x0A\s*/<br>/g; $value =~ s/\s+/ /; $FORM{$key} = $value; } }

  • Perl my 改行について

    #Practice Coad in Perl(注意:プログラムは上から実行される) use strict; use warnings; # スカラー変数 my $a = '1'; #これは「1」という数字の入っている箱 my $b = '2'; #これは「2」という数字の入っている箱 my $str = "ABCD_TEXT"; #文字列 print "$a" - "$b" ; print "$str"; 以下のコードで、my$str ="ABCD_TEXT"; #文字列 表示を 3 ABCD_TEXT としたい。 どうすればいいか?

    • 締切済み
    • noname#235477
    • Perl
    • 回答数1
  • 言葉の意味

    print文です。 print "Hello world"; Perlでは「標準関数や事前に定義されている関数で括弧を省略」することができます。 これをわかりやすいシンプルな言葉で表すと、 ズバリどういうことを言ってるの?

    • 締切済み
    • noname#235477
    • Perl
    • 回答数1
  • フォルダ内の複数のテキストファイルから指定行の抽出

    あるフォルダ内に入っているテキストファイルの2行目を全て抽出して一つのファイルにまとめたいのですが、どのような方法があるのでしょうか? perlなどのスクリプトを教えてもらえればと思います。

  • Perlのuseについて

    ズバリ、「use」とはどのような意味なの? また、 use FileHandle; などは、日本語にするとどのような意味になるのでしょうか?

    • ベストアンサー
    • noname#235477
    • Perl
    • 回答数1
  • Perl 掲示板 初心者

    初の投稿で大雑把な質問失礼致します。 (1)目的・・・ホームページに掲示板を設置したい (2)言語・・・Perl (3)文字コード・・・UTF8(Encode) Perlでメールフォームは作ることはできました。 メールに関しては、ネットサーフィンでなんとか完成したのですが、 掲示板は、たくさんでてくるも、どれもうまいこと動作しません・・・ http://webings.net/perl/boardimg1/ ここのサイトのようにしたいのですが、 コピペで貼付けし、サーバーに送り実行すると 書込ファイルが開きませんと表示されます まずファイルの読込から躓いていて、先に進みません・・・ サーバー側に index.html----cgi----bbs.pl----dat----boardimg-----jpg,png,gif等 |-----boardimg.dat このようなフォルダ構造ではないのでしょうか? パーミッションは bbs.pl→777 boardimg.dat→666 そこで、教えて頂きたいのが (1)このサイトで、どう改善すればいいのか・・(すごく大雑把申し訳ないです) (2)初心者でもわかるようなサイト (3)掲示板の仕組み(ファイルの読込、書込について) また、このサイトの掲示板では、Perl内でHTMLが記述されてますが、 ホームページのformからCGI.pmでデータの受け渡し にするほうがいいのでしょうか?

  • perlで特定行から特定行までを抜き出しor置換

    perlで以下のようなことをしたいと考えています。 以下のことを、コマンドラインから「perl ~」という形で 実行したいのですが、どのよにすればよいでしょうか。 1.特定行から特定行までを抜き出し 2.特定行から特定行の範囲で文字列置換 例えば、次のようなテキストファイルがあったとします。 example.txt ================================== #START aaaa hogehoge test okok perl script #END ================================== 上記ファイルを読み込んで、 1.「#START」から「#END」の間に挟まれた行だけ抜き出し 2.「#START」から「#END」の間で、「test」を置換 のです。 sedで言うところの sed -e '/#START/,/#END/ s/YYYYMM/201603/g' test.txt をやりたいのです。

    • ベストアンサー
    • abc999xyz
    • Perl
    • 回答数2
  • Perlのsystemでdosコマンドの引数の指定

    Perlでfcコマンドを実行する場合、 system 'fc E:\A\B\x.exe F:E:\A\B\x.exe'; では、うまくいきますが、 引数を変数で指定するにはどのように 記述すればよいのでしょうか。 (Active Perl ,Windows7) my $filename1="E:\A\B\x.exe"; my $filename2="F:\A\B\x.exe"; system 'fc $filename1 $filename2'; <--- (NG) system "fc $filename1 $filename2"; <--- (NG) system fc $filename1 $filename2; <--- (NG)

  • Perl メール

    Perlについて教えてください Perlコードの中で、別のPerlを実行したいのですが、 どうすればいいのでしょうか??

    • ベストアンサー
    • r-h-a-o
    • Perl
    • 回答数2
  • php webアプリケーション

    phpはhtmlに埋め込んで使うのが一般的ですか? phpだけでソースは書けますがphpだけだと限界が御座いませんでしょうか? phpとhtmlとjavascriptなどは組み合わせて使うのが普通でしょうか? phpだけでWebアプリケーションが作れるのかが疑問で御座います。 今回phpで産婦人科のwebアプリケーションを作る事になるので質問致しました。 非常にバカですが答えて頂けたらと思います。

  • perlのリストと配列の違いについて

    Perlの本を読んでいたらリストというのがでてきました。 読んでいてもリストと配列の違いがよくわかりません。 リストと配列はどう違っていてどのように使いわけるのでしょうか?