PERL - Hash aus Dateiliste erzeugen
Eine Datei enthält eine Programmliste mit zuständigem Programmierer ungefähr so:
#SONDER# ProgrammiererX
#PROG1# Programmierer2
#PROG2# Programmierer1
#PROG3# Programmierer4
#PROG4# Programmierer3
Grundsätzlich ist die Liste nach Programm sortiert. Am Anfang der Liste stehen allerdings
Spezialprogramme die nicht sortiert sind und auch nicht sortiert werden dürfen.
Die Liste soll als Suchliste in einem Hash verwendet werden. Nur leider sind im Hash die eingelesenen Zeilen dann
durcheinander.
"sort keys" bringt zwar die Sortierung, allerdings für alle Zeilen der Liste und ist daher ebenfalls nicht die gewünschte Lösung.
Ist es möglich die Liste genauso Zeile für Zeile in der korrekten Reihenfolge in einen Hash zu bekommen?
#SONDER# ProgrammiererX
#PROG1# Programmierer2
#PROG2# Programmierer1
#PROG3# Programmierer4
#PROG4# Programmierer3
Grundsätzlich ist die Liste nach Programm sortiert. Am Anfang der Liste stehen allerdings
Spezialprogramme die nicht sortiert sind und auch nicht sortiert werden dürfen.
Die Liste soll als Suchliste in einem Hash verwendet werden. Nur leider sind im Hash die eingelesenen Zeilen dann
durcheinander.
"sort keys" bringt zwar die Sortierung, allerdings für alle Zeilen der Liste und ist daher ebenfalls nicht die gewünschte Lösung.
Ist es möglich die Liste genauso Zeile für Zeile in der korrekten Reihenfolge in einen Hash zu bekommen?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 4640753895
Url: https://administrator.de/contentid/4640753895
Ausgedruckt am: 24.11.2024 um 05:11 Uhr
3 Kommentare
Neuester Kommentar
Wenn Sortierung wichtig erstell einfach zusätzlich ein einfaches Array mit den Keys für den Hash in der korrekten Reihenfolge, feddisch.
Ein assoziatives Array hat nunmal selbst keine Reihenfolge.
https://tio.run/##dZBdS8MwFIbv8yuOaWQt1LJu88Z2w4tVEWQb80aYRcqMNtgvkgwdo7 ...
Ein assoziatives Array hat nunmal selbst keine Reihenfolge.
https://tio.run/##dZBdS8MwFIbv8yuOaWQt1LJu88Z2w4tVEWQb80aYRcqMNtgvkgwdo7 ...