okiyoshi の回答履歴
- 文字置き換えのエラーについて
初めて、質問いたします。 実は文字の置き換えについてなのですが、 他の文字は置き換えできるのですが、 s/ゼ/ぜ/g;だけ置き換えが出来ません。 この指定をするとブラウザ画面が白くなり何も表示されません。 ちなみに、逆のs/ぜ/ゼ/g;であれば置き換えが出来ます。 なぜ置き換えが出来ないのか教えて下さい。 出来れば、この文字が置き換えが出来るようにしたいです。 よろしく、お願いします。
- 「$" = ',';」という構文の意味は?
Perl スクリプト中に「$" = ',';」という構文が出てきたのですが、これはどういう意味ですか?
- ベストアンサー
- Perl
- KateArgent
- 回答数1
- 入力フォームに半角スペース以降が表示されない
Perlでプログラムを組んでいます。 「山田 太郎」とデータを書き込みました。 それを$nameという変数に入れてPerlで出力し、 HTMLのフォームで表示しようとすると 「山田」までしか表示されません。 フォーム以外ではちゃんと「山田 太郎」と表示されます。 入力フォームはINPUTTYPE=text maxlength=20 です。 スクリプトは以下のような感じです。 HTML出力部分のみ。 # フォームからの情報を連想配列 %form に入れる &init_form($kanjicode) ・・・・ print <<"EOD"; Content-type: text/html <HTML> <HEAD> $contenttype <TITLE>$title</TITLE> </HEAD> <body> $tabletag <UL> <LI>$nameさんパスワードは大文字小文字の違いに注意してください。</LI> ↑「山田 太郎」とちゃんと表示される </UL> <FORM ACTION=$thisurl METHOD=$method> <TABLE> <TR> <TD>氏名</TD> ↓ここでは「山田」までしか表示されない <TD><INPUT type=text size=20 maxlength=20 name=$name value=$name></TD> </TR> <TR> <TD>パスワード</TD> <TD><INPUT type=password size=4 maxlength=4 name=pass value=$pass></TD> </TR> <TR> <TD COLSPAN=2> <INPUT type=hidden name=cmd value=new2> <INPUT type=submit value=登録する> </TD> </TR> </TABLE> </FORM> </BODY></HTML> EOD なにかヒントがありましたら教えてください。
- ベストアンサー
- Perl
- noname#102630
- 回答数2
- 特定の文字の個数を取得する簡単な方法ありますか?
タイトルの通りなのですが、1行中の特定の文字の個数を取得し、ある個数の時だけその行を表示させようとしています。例えば特定の文字を":"とし、":"がちょうど5個ある行だけ表示させる場合、splitを使って以下のようなコードを考えましたが、どうもスマートじゃない気がします。しかもこれだと"a:b:c:d:e:"のように、行末が":"になっている場合は、$num=5となってしまい、正しく動作しません。どなたか解決策をお願いいたします。 while(<IN>){ @list = split( /:/ , $_ ); $num = @list; if( $num == 6 ){ print "$_\n"; } }
- 2007/1/15形式をソートしたい
予約カレンダーを作っています。 ユーザーは不特定の日を予約できます。 CSVファイル 2,1029,2007/1/15,C, 3,1029,2007/1/15,B,checked 4,1029,2007/1/10,D, 5,1029,2007/1/9,C,checked 6,1029,2007/1/16,D, 8,1023,2007/1/17,D 9,1023,2007/1/24,D 10,1023,2007/1/24,C 11,1023,2007/1/10,D ID,会員番号,日付,ステータス,承認 ソートがうまくいかず上記のように並んでいます。 理想としては 9,1023,2007/1/24,D 10,1023,2007/1/24,C 8,1023,2007/1/17,D 11,1023,2007/1/10,D のように日付が新しい方を上にして書き込みたいのです。 2007/1/24のところのソートが上手くいきません。 また、IDの順序も変わると新しいIDをつけるときに困りそうです。 なにかいい方法があったら教えてください。
- ベストアンサー
- Perl
- noname#102619
- 回答数3
- ディレクトリ内の全ファイルをオープンする方法
特定のディレクトリ内に存在する全てのファイルを順次オープン・クローズするプログラムを作成したいと思います。 例えば、特定のディレクトリに下記のファイルがあるとします。 A.txt B.txt このときにA.txtをオープンし内容を読み込みクローズし、次にB.txtを同じようにオープンし内容を読み込んでクローズするプログラムです。内容を読み込んで処理する部分は問題なく、また上記のように存在するファイルが決まっていれば何も問題はないのですが、下記の場合にはどのように存在するファイルを探せばよいのかがわかりません。 ・何ファイルあるかわからない ・存在するファイルは必ずテキスト ・ファイル名は決まっていない(perlで問題なく読み込めるファイル長) なお、特定のディレクトリに存在するファイルを順次全て読み込めればよいので、その読み込む順番にこだわりはありません。 どうぞよろしくお願い致します。
- 数が一定でない複数の条件の指定のしかたについて
if ($DATA_V[2] !~/回答不要/ or $DATA_V[5] !~/回答不要/ or $DATA_V[8] !~/回答不要/ or $DATA_V[11] !~/回答不要/){ #処理(掲示板に表示する) という処理を行いたいのですが、 フォームはアンケートごとに変わるので、DATA_Vの数が一定でありません。 どのように書いたらよいでしょうか。 どうぞ、よろしくお願いいたします。
- ベストアンサー
- Perl
- tamachan18
- 回答数3
- 数が一定でない複数の条件の指定のしかたについて
if ($DATA_V[2] !~/回答不要/ or $DATA_V[5] !~/回答不要/ or $DATA_V[8] !~/回答不要/ or $DATA_V[11] !~/回答不要/){ #処理(掲示板に表示する) という処理を行いたいのですが、 フォームはアンケートごとに変わるので、DATA_Vの数が一定でありません。 どのように書いたらよいでしょうか。 どうぞ、よろしくお願いいたします。
- ベストアンサー
- Perl
- tamachan18
- 回答数3
- 複数のキーで配列をソートするには?
配列が複数あって、キーを3つでソートする場合には どのようにしたらよろしいでしょうか? @a = ("A","B","C","B","A" ); @b = ("Y","X","Z","X","Z" ); @c = (4,3,5,2,1); 結果として、 A,Y,4 A,Z,1 B,X,2 B,X,3 C,Z,5 のように表示したいのですが、2次元配列でないと無理でしょうか? ちょっと分かりにくいかもしれませんが、Excelなどで、3つのキーで 優先順位を設定してソートするようなイメージです。
- 複数のキーで配列をソートするには?
配列が複数あって、キーを3つでソートする場合には どのようにしたらよろしいでしょうか? @a = ("A","B","C","B","A" ); @b = ("Y","X","Z","X","Z" ); @c = (4,3,5,2,1); 結果として、 A,Y,4 A,Z,1 B,X,2 B,X,3 C,Z,5 のように表示したいのですが、2次元配列でないと無理でしょうか? ちょっと分かりにくいかもしれませんが、Excelなどで、3つのキーで 優先順位を設定してソートするようなイメージです。
- CSSのフォーマット
phpでできたサイトのデザインの編集に携わっているのですが、CSSのファイルを開くと、大まかに3種類ほどの形式があることに気がつきました。 ひとつはよく見かける形式になっています。 aaa { color:ffffff; } もうひとつは、ドットで始まっています。 .aaa { color:ffffff; } 最後は#で始まっています。 #aaa { color:ffffff; } これらの違いについて解説されているサイトや, もしよろしければ直接その違いについてご教授して頂けると嬉しく思います。ご存知の方おられましたらどうぞよろしくお願いいたします。
- 連想配列の操作方法について
A,B,C,D,E 1,3,4,5,7 2,4,6,7,10 4,5,1,4,8 このようなコンマ区切りテキストファイルを読み込み、次のような配列をつくるには、どうのようにしたよいか悩んでいます。 ご教授ください。 [A,1,2,4],・・・,[E,7,10,8] (行と列を置き換えるように配列を作成したい)
- ベストアンサー
- Perl
- coffeegoer
- 回答数4
- Perlで重複行を削除したい
あ b c d e e g あ b c d e e g い b c d e e g い c c d e e g 上記のようなCSVデータ(タブ区切り)が100行くらいあるのですが、1列目にある、あ、あ、い、いは無視して、2列目以降のデータのみで重複を比較して同じ行は削除したいのですがどのようにすればよいでしょうか? 下記コードを応用すれば分かりそうなのですが、自分で作ることができませんでした。 どなたか、教えていただけ無いでしょうか? 宜しくお願い致します。 open(OUT, "$file"); @array = <OUT>; close(OUT); my %count; @array = grep(!$count{$_}++, @array); print @array;
- ベストアンサー
- CGI
- ayu_mi_nic
- 回答数3
- Perlで重複行を削除したい
あ b c d e e g あ b c d e e g い b c d e e g い c c d e e g 上記のようなCSVデータ(タブ区切り)が100行くらいあるのですが、1列目にある、あ、あ、い、いは無視して、2列目以降のデータのみで重複を比較して同じ行は削除したいのですがどのようにすればよいでしょうか? 下記コードを応用すれば分かりそうなのですが、自分で作ることができませんでした。 どなたか、教えていただけ無いでしょうか? 宜しくお願い致します。 open(OUT, "$file"); @array = <OUT>; close(OUT); my %count; @array = grep(!$count{$_}++, @array); print @array;
- ベストアンサー
- CGI
- ayu_mi_nic
- 回答数3