問題タブ [hash-of-hashes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
72 参照

perl - perlでハッシュのハッシュの両方のレベルのキーをソートする

さまざまなカテゴリの特定の位置(およびそれらのかなりの数;〜40,000)でいくつかの値(ランダムに発生する)を追跡する必要があるコードがあるため、ハッシュのハッシュが最適であると考えました方法として、カテゴリをキーの最初のレイヤーとして、位置を 2 番目として、値を値として使用します。何かのようなもの:

次に、両方のカテゴリの順に並べ替えて印刷し、次に配置して、次のような出力ファイルを取得する必要があります。

しかし、ネストされた並べ替えの構文を理解することはできません (または、このアプローチよりも優れたアイデアを持っている人はいますか?)

0 投票する
1 に答える
859 参照

perl - タブ区切りファイルを解析して配列のハッシュにする

私は次のことを実行しようとしている perl 初心者です。

1) ユーザー入力
を取得します 2) 入力をファイル 1 の列 1 からのその値のインスタンスと照合し、列 2 からの対応する値をハッシュ、配列のハッシュ、またはハッシュのハッシュに格納します。(以下のコードは配列のハッシュに格納されますが、これが以下の 3 を達成するのに最適かどうかはわかりません)
3) ファイル 2 の最初の列 = ファイル 1 の列 2 のすべてのインスタンス (存在する場合) を見つける必要があります。

簡単にするために、以下にサンプルファイルを用意しました。

入力ファイルの列 1 にある「AAA」のユーザー入力を、列 2 の対応するすべての値のキーとして、ハッシュまたは配列に取り込もうとしています。

私の入力ファイルには、列 1 に「AAA」の複数のインスタンスがあり、列 2 の値が異なります。また、列 1 と 2 に「AAA」と「BBB」の複数のインスタンスがあります。これを適切に出力するには、ハッシュのハッシュを使用しますが、構文的にアプローチする方法がわかりません。

私はこのサイトを検索していくつかの例を見つけましたが、私は自分自身をもっと混乱させているだけだと思います.

入力ファイルの例。

私のコードの例

コード出力

私の質問は、配列設定の現在のハッシュは、ファイル 2 の列 1 を読み取り、それをファイル 1 の列 2 と比較するのに最適でしょうか? それとも、別の方法でアプローチする必要がありますか?

0 投票する
2 に答える
283 参照

perl - ハッシュのPerlハッシュ

そこで、Perl HoH を使用して、いくつかの値を HoH から配列にプッシュしようとしています。

以下は、より適切に説明するためのコードの一部です。

基本的に、このスクリプトの目的は HoH をループすることですが、ハッシュの各ブロック全体で が得られますSTDIN。次に を入力し、その要素の を配列keyにプッシュします。value(現在、コードはprintデバッグ用とだけ言っています)。

私が試してみました

$hoh{$group}私が取得し、HASH(0x6ff920)他のすべての値は空白であり、エラーはありません。

何かご意見は?ありがとうございました

0 投票する
3 に答える
192 参照

ruby - デフォルト ハッシュの構造を使用してハッシュ オブ ハッシュを作成する

次のコードがあります。

ハッシュのキー:idの値は, ,であると予想します。:detailKEY-0KEY-1KEY-2

0 投票する
2 に答える
657 参照

perl - ハッシュのPerlハッシュ、最小の数値キーを取得

最初のキーが文字列で、2 番目のキーが整数であるハッシュのハッシュがあります。ハッシュのハッシュで最も低い 2 番目のキーを取得しようとしています。これが私のハッシュです。

ハッシュの最小 (最小) キーを取得するにはどうすればよいsimpsonsですか? この場合、答えは になります3。私が見つけた最も近い関連検索は、最高値のキーを取得する方法でした。しかし、数値が最も低いキーを取得しようとしています。

================== 編集 ============ 私の試み ================

キー(1、2、3、4など)が存在しない可能性があるため、キーを順番にループして(1、2、3、4など)、最も低いキーを格納して返すことはできません。おそらく、キーを別の配列に格納し、その配列に格納されている最小のキーを取得しようとしたでしょう。それが私の試みです。それは一種のラウンドアバウトな方法です。それは回り道なので、次にもっと簡単な方法(ワンライナーの方法)があるかどうかを確認するために、さらにグーグルを実行したでしょう。

0 投票する
1 に答える
599 参照

arrays - ネストされた Perl ハッシュからの配列参照の逆参照

その主題を正しく述べたことを願っています。ファイルの読み取りから構築したハッシュのハッシュがあります。外側のハッシュはグループで、内側のハッシュはそのグループ内のパラメーターです。各パラメーター値はスカラーまたは配列のいずれかであり、配列はゼロまたは 1 から開始できます。

パラメータの値を返すサブルーチンを作成しました。呼び出し元の関数は、戻り値がスカラーか配列かを判断する必要があります。スカラーに対してはうまく機能します。配列値の配列への参照を返します ( のようになりますARRAY(0x004f00))。を使用Data::Dumperすると、配列のように見えるデータが吐き出されますが、コードでそれを逆参照する方法がわかりません。誰かが私が間違っていることを指摘できますか?

呼び出し元は戻り値を配列 に代入する@returnため、スカラーの場合は値を に入れる必要があります$return[0]

配列の場合は、配列に値を設定する必要があります。を呼び出すとDumper、一重引用符で囲まれたスカラーと角括弧で囲まれた配列が出力されます。ただし、scalar(@return)配列のサイズを確認するために使用すると、1 が返されます。

最後に角括弧を使用して return ステートメントを逆参照して、スカラーを返すことさえできるかどうかを確認しましたが、うまくいきませんでした。

0 投票する
1 に答える
64 参照

perl - 引数としてハッシュのハッシュからハッシュを取得し、そのハッシュからの値の 1 つを出力するサブルーチンを Perl で作成する

詳細:

1 番目のハッシュ: エラー メッセージの
ハッシュ 2 番目のハッシュ: エラー メッセージ自体 (error_name)

3 つのキー値 (statusCode、message、params) を含む

error_name を受け取り、メッセージを出力するメソッドを作成しようとしています。これは私が今持っているコードです:

これは可能ですか?ハッシュ %error からエラーを取得し、そのメッセージを出力するサブルーチンを作成しようとしています。これは可能ですか?または、もっと良い方法があるかもしれません。