Учитывая это (псевдо) marcXML. Каков наиболее эффективный способ анализа таких данных?
<record>
<data tag="02">
<subfield>
Huckleberry Finn
</subfield>
</data>
</record>
<record>
<data tag="01">
<subfield>
Mitchell, Margaret
</subfield>
</data>
<data tag="02">
<subfield>
Gone with the wind
</subfield>
</data>
</record>
Обратите внимание, что во втором наборе данных отсутствует атрибут с тегом = "02", поэтому у этого набора данных нет автора. Вполне может быть, что атрибут отсутствует с tag = "01".
Что я пробовал:
Вы можете перебрать все записи, найти авторов, затем снова перебрать названия и добавить их вместе. Если вы поместите результат в массив, у вас возникнет следующая проблема:
authorsArray = ["Mitchell, Margaret"]
titleArray = ["Huckleberry Finn", "Gone with the wind"]
Если вы объедините оба, результат будет неправильным:
result = [["Mitchell, Margaret", "Huckleberry Finn"], ["Gone with the wind"]]
Этот метод использует две итерации и два вспомогательных массива .
Любые предложения будут оценены