2023-08-04 07:09:50
Re①:変数の呼び出しについて
まず、りんごのプログラムの場合、「果物」という変数に代入されているのは「りんご」という変数ですから、その内容は10となりますね。 しかし、カレーの場合はどうかというと、「該当品番」という変数に代入されているのは「それ\0」で、その内容は「カレー粉黒」という文字列なんです。 文字列はあくまでも文字列で、「カレー粉黒」という変数ではありません。 なので、表示されるのは「カレー粉黒」という文字ということになるわけです。 とりあえず、このプログラムをとにかくこのまま動くようにするのなら、 #----------- 該当品番をナデシコして表示する #----------- で、いけます。 「ナデシコ」は、引数に指定した文字列をそのままなでしこのプログラムとして実行するとゆう荒技で、該当品番すなわち「カレー粉黒」という文字列をなでしこのプログラムとして実行すると、「カレー粉黒」変数が呼び出されてその内容が表示されるって寸法です。 でもタブン、データをハッシュにしたりした方がいいのかなあ? という。 #------------------------------------------------------------ パターン=「カレールー|カレー粉|スパイス|」 レシピ@「海鮮カレー」は「じゃがいも,200 にんじん,10 カレー粉黒,100」 レシピ@「カレー粉黒」は「ターメリック,2 唐辛子,1 クミン,3」 レシピ@「海鮮カレー」を反復 対象をパターンで正規表現マッチ もし、それが空でなければ 対象を「,」で区切る #パターンに合致する行を,で区切って品番と個数に分割する それ\0を該当品番に代入する それ\1を該当個数に代入する レシピ@該当品番を表示する #------------------------------------------------------------ 「レシピ」というハッシュ変数の中に、「海鮮カレー」という項目と「カレー粉黒」という項目を作り、それぞれのレシピを入れています。 ハッシュの項目名は文字列なので、該当品番に代入された文字列で、そのまま呼び出せるってワケです。 いま複数のレシピの結合をしたくて試行錯誤しているのですがどうしてもわからないので助けていただけないでしょうか?
現在添付のようなプログラムを組みました。 このプログラムは海鮮カレーのレシピとカレー粉のレシピがそれぞれ存在しており これを結合させることを最終目的としています。 途中段階として 上記を実施すると海鮮カレーレシピの中にカレー粉などの文字列ががある場合 カレー粉のレシピを表示させたいのですが 最後の行でカレー粉と表示されてしまいます。 変数の名前と値の関係を調べるため #ここから りんごは10 りんごを表示する 果物はりんご 「{果物}」を表示する #ここまで 上記を実施すると 10 10となり 変数の名前を変数の値とすることで呼び出せると思うのですが 最初のプログラムを実行すると カレー粉 が表示されてしまい 期待している ターメリック,2 唐辛子,1 クミン,3 は表示されません。 お手数ですがどなたかお教えいただけないでしょうか? |