大数据开发之Hive案例篇8-解析XML

news2024/12/22 22:21:19

文章目录

  • 一. 问题描述
  • 二. 解决方案
    • 2.1 官方文档
    • 2.2 XML格式不规范

一. 问题描述

今天接到一个新需求,hive表里面有个字段存储的是XML类型数据

数据格式:

<a>
    <b>bb</b>
    <c>cc</c>
</a>

二. 解决方案

2.1 官方文档

遇到不懂的问题,首先上官方文档查询相关文档,然后照着官网的demo改改,一般就能解决问题了

官方文档地址:
https://cwiki.apache.org/confluence/display/Hive/LanguageManual+XPathUDF
丰富的XML相关函数及测试用例

代码:

-- 求路径 a/b下面的值
SELECT xpath_string ('<a><b>bb</b><c>cc</c></a>', 'a/b') LIMIT 1 ;

测试记录:

hive> 
    > SELECT xpath_string ('<a><b>bb</b><c>cc</c></a>', 'a/b') LIMIT 1 ;
OK
bb
Time taken: 1.477 seconds, Fetched: 1 row(s)
hive> 

2.2 XML格式不规范

因为Hive不支持XML数据格式,后端写入数据库存的是一个String类型,此时格式就没那么规范了,会有一些特殊字符

解析xml报错,原来是有特殊字符
https://stackoverflow.com/questions/730133/what-are-invalid-characters-in-xml

xml不符合规范的字符
https://blog.csdn.net/u014589856/article/details/107151252
image.png

通过正则表达式删除特殊字符:

  1. 下面几个是常用的特殊字符
@&$#%
regexp_replace(the_gifts,'[@&$#%]','')
  1. 只保留 大小写字母 数字 及中文 以及 xml标签
regexp_replace(the_gifts,'(^[a-z]+|[A-Z]+|[0-9]+|[\\u4E00-\\u9FA5]+[</>])','')

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/570764.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PyTorch-Forecasting一个新的时间序列预测库

时间序列预测在金融、天气预报、销售预测和需求预测等各个领域发挥着至关重要的作用。PyTorch- forecasting是一个建立在PyTorch之上的开源Python包&#xff0c;专门用于简化和增强时间序列的工作。在本文中我们介绍PyTorch-Forecasting的特性和功能&#xff0c;并进行示例代码…

xhs小红薯【帖子】采集工具python爬虫抓取

一、xhs【帖子/笔记/视频】采集工具链接 &#xff08;请复制链接至浏览器&#xff0c;进行数据采集&#xff09; http://106.53.68.168:9920/xhs-keyword-spider 能爬取到的属性字段如图1 (点击右侧下拉按钮&#xff0c;可任选字段&#xff09; 图1属性字段 二、爬取规则 …

计算机毕业论文选题推荐|软件工程|系列九

文章目录 导文题目导文 计算机毕业论文选题推荐|软件工程 (***语言)==使用其他任何编程语言 例如:基于(***语言)门窗账务管理系统的设计与实现 得到:基于JAVA门窗账务管理系统的设计与实现 基于vue门窗账务管理系统的设计与实现 等等 题目 基于(***语言)学生在校信息管…

哪些pdf编辑软件值得下载?办公常备软件

PDF&#xff08;Portable Document Format&#xff09;是一种广泛用于电子文件传输的文档格式。为了更好的编辑和管理PDF文档&#xff0c;许多PDF编辑软件逐渐发展出来。本文将介绍PDF编辑软件的功能和使用方法。 使用PDF编辑软件可以提高我们的工作效率和文档管理能力。下面介…

【AI提示】ChatGPT提示工程课程(吴恩达OpenAI)迭代提示词笔记(中文chatgpt版)...

Iterative Prompt Develelopment 迭代提示词开发 在本课中&#xff0c;您将反复分析和优化您的提示&#xff0c;以从产品说明书生成营销文案。 设置 import openai import osfrom dotenv import load_dotenv, find_dotenv _ load_dotenv(find_dotenv()) # read local .env fil…

漫画管理工具Kapowarr

之前老苏写过不少漫画相关的软件&#xff0c;Mango、Kavita、Komga等等&#xff0c;但和今天要介绍的 Kapowarr 不太一样&#xff0c;如果你之前用过 Radarr、Sonarr 等 *arr 系列软件&#xff0c;应该是很容易上手的 什么是 Kapowarr &#xff1f; Kapowarr&#xff08;以前的…

基于Android studio二手车交易系统app

客户端&#xff1a; 用户注册&#xff1a;通过输入用户名&#xff0c;密码&#xff0c;所在地&#xff0c;联系地址以及电话和电子邮件等信息进行用户信息的注册。 二手车查看&#xff1a;用户注册登录系统后&#xff0c;可以查看二手车的基本信息&#xff0c;通过二手车的品牌…

【使用教程】NIMC2000控制器EtherCAT通讯下SDO位置清零

NIMC2000控制器是一种高性能的运动控制器&#xff0c;可通过EtherCAT通讯进行控制。在使用过程中&#xff0c;有时需要将位置清零&#xff0c;这可以通过SDO命令实现。 首先&#xff0c;需要确保NIMC2000控制器已经通过EtherCAT连接到了主机。然后&#xff0c;使用SDO命令将位…

AI技术:智慧交通时代的道路识别(文末送书四本)

前言&#xff1a; Hello大家好&#xff0c;我是Dream。 自动驾驶是当前最热门的技术之一&#xff0c;而道路识别则是自动驾驶系统中的重要一环。它需要自动驾驶车辆能够识别和解读道路标志、路面标线、交通信号灯等道路条件&#xff0c;及时准确地做出驾驶决策。接下来Dream将带…

医药行业除钾钠,物料液体钾钠分离,特殊溶剂钾的提取

Tulsimer T-42是特级强酸型离子交换树脂&#xff0c;氢 H/钠 Na阳离子交换树脂&#xff0c; 是一款有较的交换容量 ,并同时拥有物理及化学稳定品质。可应用于汽电共生发电厂冷凝水处理及超纯水系统中的混床, 去除水中的阳离子。 Tulsimer T-42其无裂纹特性和均匀的粒度&#x…

【源码分析】【netty】FastThreadLocal 为什么快?

写在前面 接下来几篇文章&#xff0c;我们来聊一聊 netty 相关的。这里作者想先从 FastThreadLocal 开始说&#xff0c;而不是可能大家更熟悉的 reactor 啊&#xff0c;责任链设计啊&#xff0c;ByteBuf 啊&#xff0c;池化啊等等。不过虽然说 FastThreadLocal 熟知程度不如其…

剑指offer 2--数组中重复的元素

数组中重复的数字_牛客题霸_牛客网 (nowcoder.com) 【排序法】思路和代码&#xff1a; 对数组进行排序。遍历排序后的数组&#xff0c;如果当前元素与下一个元素相等&#xff0c;则找到了重复数字&#xff0c;返回该数字。如果遍历完数组都没有找到重复数字&#xff0c;则返回-…

ChatGPT应用组队学习来了!

Datawhale学习 联合主办&#xff1a;Datawhale、百度文心 Datawhale联合百度文心&#xff0c;五月为大家带来AIGC应用专题&#xff1a;大模型从入门到应用&#xff0c;学习大纲如下&#xff08;文末整理了这次学习的所有资料&#xff09;&#xff1a; 参与学习 ▶ 活动时间&am…

量子力学专题:线性谐振子

任何体系在平衡位置附近的小振动&#xff0c;例如 分子振动、晶格振动、原子核表面振动以及辐射场的振动等往往都可以分解成 若干彼此独立的一维简谐振动简谐振动往往还作为复杂运动的初步近似 见理论力学专题&#xff08;小振动&#xff09; 双原子分子&#xff0c;两原子间的…

kubernetes02

pod pod生命周期 pod的状态 1.挂起pending:API server创建了pod资源对象已存入etcd中&#xff0c;但它尚未被调度完成&#xff0c;或者仍处于从仓库下载镜像的过程中 2.运行中running:pod已经被调度到某节点&#xff0c;并且所有容器都已经被kubelet创建完成 3.成功complet:…

物业设备管理系统

物业服务质量难以保证&#xff0c;工单处理慢&#xff0c;巡检记录不规范&#xff1b;物业设备设施管理混乱&#xff0c;维修保养成本高&#xff0c;风险隐患多&#xff1b;物业数据分散&#xff0c;难以统计分析&#xff0c;无法提供决策支持&#xff1b;每天需要检查和保养的…

Hadoop学习---8、Hadoop数据压缩

1、Hadoop数据压缩 1.1 概述 1、压缩的好处和坏处 &#xff08;1&#xff09;优点&#xff1a;减少磁盘IO、减少磁盘储存空间 &#xff08;2&#xff09;缺点&#xff1a;增加CPU开销 2、压缩原则 &#xff08;1&#xff09;运算密集型的Job&#xff0c;少用压缩 &#xff08…

亚马逊云科技赋能中国出海企业创新及开拓海外业务

向全球价值链上游奋进 中国企业增强国际竞争力的关键&#xff0c;是努力朝全球价值链上游奋进&#xff0c;发力技术出海。中国的出海新机遇&#xff0c;背后曾是疫情在全球按下数字互联和数字化升级的快进键&#xff0c;跨境电商、在线社交、移动支付、数字服务等数字经济迎来…

【技巧】如何保护Word文档不被改动?

工作上&#xff0c;很多小伙伴需要将Word文档发给对方看&#xff0c;但又不想在传看时&#xff0c;被对方改动上面的内容。这种情况&#xff0c;我们可以通过以下两种方法&#xff0c;让Word文档不能改动。 首先&#xff0c;我们可以把Word文档设置限制编辑&#xff0c;被限制后…

FPGA采集CameraLink相机Full模式解码输出,附带工程源码和技术支持

目录 1、前言2、CameraLink协议基础3、目前我已有的CameraLink收发工程4、设计方案输入CameraLink相机视频缓存视频输出软件配置 5、vivado工程详解6、上板调试验证7、福利&#xff1a;工程代码的获取 1、前言 FPGA实现CameraLink视频编解码目前有两种方案&#xff1a; 一是使…