Verwenden eines dynamisch generierten Variablennamens im strengen Perl-Modus [duplizieren]

Diese Frage hat hier bereits eine Antwort:

Wie kann ich eine Variable als Variablennamen in Perl verwenden? 3 Antworten

Grundsätzlich würde ich gerne den Inhalt einer Variablen mit dem Namen eines dynamisch generierten Strings abrufen, aber alle Versuche, dies im Strict-Modus zu erreichen, sind fehlgeschlagen. Es gibt mehrere Posts über ähnliche Probleme, aber keine scheint Lösungen zu haben, die für mich funktioniert haben.

Das möchte ich machen:

# Fields:
$q1 = "ex. data 1";
$q2 = "ex. data 2";
$q3 = "ex. data 3";
$q4 = "ex. data 4";
$q5 = "ex. data 5";

# retrieve the desired field name.  q1, q2, q3, q4, or q5.
$field_name = fetch_the_desired_field_name();

# fetch the contents of the named field.  ex. data 1, ex. data 2, etc.
$contents_of_desired_field = $field_name;

print $contents_of_desired_field;

Gibt es eine Möglichkeit, dies im strengen Modus zu tun? In anderen Posts über ähnliche Probleme wird gesagt, dass Hashes die Antwort sind, aber ich kann anscheinend nicht recht verstehen, wie dies mit einem Hash geschehen soll. Es versteht sich von selbst, dass dies ein sehr vereinfachtes Beispiel ist. Im aktuellen Code gibt es 115 mögliche Feldnamen, die alle aus einer Datenbank mit unvorhersehbarem Inhalt stammen.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage