xml解析

62lalag4  于 2021-06-04  发布在  Hadoop
关注(0)|答案(2)|浏览(415)

我有一个需求,在这里,我必须解析xml以获得所需的字段,对所需字段执行操作,并使用数据生成csv。
我查看了pig中可用的xmlloader,但是它似乎也返回xml标记。我感兴趣的是数据。我有什么办法可以做到这一点吗?我还需要生成一个csv使用数据。
任何工作样品都会大有帮助。

svmlkihl

svmlkihl1#

您可以使用regex\u extract()从标记中获取信息,也可以使用substring()和regex\u extract\u all。

f87krz0w

f87krz0w2#

piggybankjar在pig中提供了xml加载器
在pig的load语句中,需要使用xmloader进行加载。你需要适当提及你的父母标签。

A = load '/path of the file' using org.apache.pig.piggybank.storage.XMLLoader('parent_tag') as (x:chararray);
B = foreach A generate REPLACE(x,'[\\n]','') as x;

在此之后,您需要使用regex\u extract\u all来提取标记之间的数据

C = foreach B generate REGEX_EXTRACT_ALL(x,'.*(?:<child_tag1>)([^<]*).*(?:<child_tag2>)([^<]*).*');

有关更多详细信息,请参阅下面的链接
https://acadgild.com/blog/converting-xml-into-csv-using-pig/

相关问题