java - java中如何在不使用标签名称的情况下提取xml标签值?

标签 java xml tags extract

我正在使用java。我有一个如下所示的xml文件:

<?xml version="1.0"?>
      <personaldetails>
          <phno>1553294232</phno>
          <email>
                <official>xya@gmail.com</official>
                <personal>bk@yahoo.com</personal>
          </email>
      </personaldetails>

现在,我需要使用特定条件检查每个标签值的类型,并将它们放入单独的文件中。

例如,在上面的文件中,我写了诸如10位数字等于电话号码之类的条件, xxx@yy.com 格式的内容是一封电子邮件..

所以,我需要做的是我需要提取每个标签中的标签值,如果它匹配某个条件,则将其放入第一个文本文件中,如果不匹配则放入第二个文本文件中。 在这种情况下,第一个文本文件将包含:

1553294232
xya@gmail.com
bk@yahoo.com

以及第二个文件中的其余值。

我只是不知道如何在不使用标签名称的情况下提取标签值。(或不使用 GetElementsByTagName)。 我的意思是,即使我给出 < mailing> ,这段代码也应该提取电子邮件 bk@yahoo.com 。而不是<personal>标签。它不应该依赖于标签名称。

希望我没有感到困惑。我是使用 xml 的 java 新手。所以,如果我的问题很愚蠢,请原谅我。 请帮忙。

最佳答案

似乎是 XPath 的典型用例

XPath 允许您以非常灵活的方式查询 XML。

本教程可以帮助:

http://www.javabeat.net/2009/03/how-to-query-xml-using-xpath/

如果您使用的是 Java 脚本,情况可能如此,因为您提到了 getElementsByTagName(),您可以只使用 JQuery 选择器,它将为您提供跨浏览器的一致行为,并且JQuery 库对于很多其他事情都很有用,如果您还没有使用它... http://api.jquery.com/category/selectors/

以下是相关信息的示例:

http://www.switchonthecode.com/tutorials/xml-parsing-with-jquery

关于java - java中如何在不使用标签名称的情况下提取xml标签值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12255529/

相关文章:

java - 如果如何避免

xml - 获取服务器响应 500(内部服务器错误)的 xml 内容

Delphi 中的 XML 命名空间

php - 使用 PHP 和 MySQL 创建基于标签的相关链接功能

javascript - 在javascript中访问一个html节点

Java,SSLSocket,没有收到任何答复

java - Android 11 打开失败 : EACCES (Permission denied)

java - JPA 中的 NullPointerException

android - 条件 XML 编辑文本格式

javascript 不会将新标签内容保留在函数之外吗?