从xml中提取所有的文本
发布时间:2020-12-15 23:47:59 所属栏目:百科 来源:网络整理
导读:今天遇到一个需求:从xml中提取所有的文本(或者说是 xml去标签)。 写了一会儿,觉得可能别个兄弟也会遇到,就拿出来,看这样妥不妥~ (用dom4j进行解析的) /** * 提取分散在xml串中的文本 * @param xml 如:"a这span是span我/spanspan的/span标题/span!/
今天遇到一个需求:从xml中提取所有的文本(或者说是 xml去标签)。 写了一会儿,觉得可能别个兄弟也会遇到,就拿出来,看这样妥不妥~ (用dom4j进行解析的) /** * 提取分散在xml串中的文本 * @param xml 如:"<a>这<span>是<span>我</span><span>的</span>标题</span>!</a>!!" => 这是我的标题!!! * @return */ private String getTextFromXml(String xml) { Document doc; try { //保证有一个根节点 所以加了一个warp节点 doc = DocumentHelper.parseText("<warp>"+xml+"</warp>"); Element root = doc.getRootElement(); clearElement(root); return root.getTextTrim(); } catch (DocumentException e) { e.printStackTrace(); } return null; } /** * 把 所有子节点 删除掉,但保留节点下面的所有内容 * @param ele * @return */ private Text clearElement(Element ele) { List elepar = ele.content(); Object tempObj; for (int i = 0; i < elepar.size(); i++) { tempObj = elepar.get(i); if (tempObj instanceof Element) { elepar.set(i,clearElement((Element) tempObj)); } } return elepar.size() > 0 ? DocumentHelper.createText(ele.getTextTrim()) : DocumentHelper.createText("") ; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |