Народ,
Я использую REXML для образца XML-файла:
<Accounts title="This is the test title">
<Account name="frenchcustomer">
<username name = "frencu"/>
<password pw = "hello34"/>
<accountdn dn = "https://frenchcu.com/"/>
<exporttest name="basic">
<exportname name = "basicexport"/>
<exportterm term = "oldschool"/>
</exporttest>
</Account>
<Account name="britishcustomer">
<username name = "britishcu"/>
<password pw = "mellow34"/>
<accountdn dn = "https://britishcu.com/"/>
<exporttest name="existingsearch">
<exportname name = "largexpo"/>
<exportterm term = "greatschool"/>
</exporttest>
</Account>
</Accounts>
Я читаю XML следующим образом:
@data = (REXML::Document.new file).root
@dataarr = @@testdata.elements.to_a("//Account")
Теперь я хочучтобы получить имя пользователя француза, поэтому я попробовал это:
@dataarr[@name=fenchcustomer].elements["username"].attributes["name"]
это не удалось, я не хочу использовать индекс массива, например
@dataarr[1].elements["username"].attributes["name"]
будет работать, ноЯ не хочу этого делать, есть что-то, чего мне здесь не хватает.Я хочу использовать массив и получить имя пользователя француза, используя имя учетной записи.
Большое спасибо.