Получить элементы без текстовых значений в XML в эликсире - PullRequest
1 голос
/ 23 марта 2019

Я пытаюсь проанализировать следующий документ XML с помощью библиотеки SweetXML.

<A>
    <B>23</B>
    <B>34</B>
    <B></B>
</A>

Однако, когда я пытаюсь проанализировать документ, используя: xpath(~x"/A/B/text()"l), я получаю ответ ['23', '34'].В любом случае я могу получить список со значением nil для элемента без текста?Я ожидаю ответа: ['23', '34', nil].

1 Ответ

3 голосов
/ 24 марта 2019

Я думаю, что вы хотите использовать дополнительное отображение:

xpath(xml, ~x"//A/B"l, number: ~x"text()")
|> Enum.map(fn %{number: number} -> number end)

Вывод:

['23', '34', nil]
...