指定したファイルがフォルダ内にあるかどうかを調べるために以下のようにしました。
#フォルダ内の確認
opendir (FOLDER,"img");
@FOLDERS = readdir (FOLDER);
closedir(FOLDER);
my ($cnt) = 0;
foreach(@FOLDERS)
{
if ($_ =~ /.+\..+/) { $cnt++; }
}
#指定したファイルがあるかどうかの確認
for($i=1;$i<3;$i++){
for($n=2;$n<$cnt;$n++){
$F = $FOLDERS[$n];
if('$i.jpg' eq '$F'){
print "<TD CLASS=TD1><IMG SRC='img/$i.jpg' HEIGHT=65 WIDTH=50></TD>\n";
print "<FONT COLOR=RED>★</FONT><BR>\n";
#$i=$i+1;
} elsif('$i.jpg' ne '$F'){
print "$i.jpg $F<BR>\n";
}#if
} #for $n
} #for $i
ですがすべて「違う」となってしまいます。
どこがダメなのでしょうか?
※perlです。
No.3
- 回答日時:
KODAMARさんこんにちは。
>if('$i.jpg' eq '$F'){
>} elsif('$i.jpg' ne '$F'){
この部分間違えていますよ。
>print "$i.jpg $F<BR>\n";
と大きく違う部分があるのがお分かりでしょうか?
" と ' です。
if文の中では ' を使用しているのに、print()では " を使用しているから、何がおかしいのか解らなくなっているのでしょう。
>print "$i.jpg $F<BR>\n";
の部分を
print '$i.jpg $F<BR>\n';
に変えてみるとよく解ると思います。
' は、中にかかれたもの全てを文字と解釈します。
$i とか $F と書いても、それは「$i」「$F」という”文字列”があるのだと解釈され、決して「1.jpg」等には展開されません。
間違っている部分の動きを確認した上で、 ' を " に修正してください。
この回答への補足
みなさんにポイントを差し上げたいところなのですが、2人までですので先着順にポイントをつけさせていただきます。
ありがとうございました。
No.2
- 回答日時:
Perlの仕様でシングルクォーテーション(')で囲んだ文字列内では変数が評価されません。
つまり、変数の中身が展開されない為、
'$i.jpg'などはそのまま$i.jpgという文字列と認識されます。
ダブルクォーテーション(")で囲めば変数が展開されます。
http://village.infoweb.ne.jp/~fwnw6734/perl/perl …
http://www.hahaha.jp/check/perl_02.htm
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/17 11:59
- HTML・CSS CSSのホバーエフェクト 1 2023/06/19 06:53
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- その他(プログラミング・Web制作) ColabでのPytorchのエラー 1 2022/11/19 20:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
パソコン → パャRン
-
Application.ScreenUpdating = ...
-
JSONで文字列が長い時
-
文字の横にプルダウンを表示さ...
-
FindFirst を複数条件で検索
-
数値かどうかの判定方法
-
C言語について
-
プルダウンメニューがプルアップに
-
講義でわからないのですが以下...
-
Pythonのプログラミングの質問...
-
実行時エラー 3020の対策
-
linuxにおけるCの自作ヘッダフ...
-
「*:*」って何を意味するのでし...
-
C++ コマンドプロンプトでの入...
-
日齢計算プログラム
-
HASH(0xほげほげ)
-
C言語 家系図
-
pythonの*
-
実行中の変数の中身をイミディ...
-
子windowsからsubmit()後にclos...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
my $html<<EOMの意味を教えてく...
-
malformed header from script....
-
結果を得て自動的にページ移動...
-
Perl CGIの中で # を使ってコメ...
-
パソコン → パャRン
-
shift-jisからutf8に変換
-
CGIから出力される文字が化けて...
-
フリーCGI ラジオボタンの改行...
-
テキストエリアにテキストファ...
-
HTMLのファイルにCGI処理結果を...
-
アクセス人数制限CGIについて。
-
初歩的なCGIですが その2
-
PerlでDBIを使いますが、結果セ...
-
ランダムに背景画像を変える方法。
-
Perlでの数字の12桁化
-
Pythonを用いてCGIを作る勉強を...
-
cgiでのデータ受信
-
CGIファイルを参照制御でき...
-
テキストエリアの改行表示
-
テキストファイルの読み込み
おすすめ情報