加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

jsoup – 按属性值搜索元素

发布时间:2020-12-15 05:09:21 所属栏目:Java 来源:网络整理
导读:所以我不确定这是否可行.但我想扫描 XML文档以查找具有特定属性值的所有元素. 元素是什么或属性类型无关紧要……我只需要根据属性值找到它们. 例如我正在寻找“鸭子”这个词 person name="Fred" thing="duck"/person name="Mary"/animal name="duck" thing="
所以我不确定这是否可行.但我想扫描 XML文档以查找具有特定属性值的所有元素.

元素是什么或属性类型无关紧要……我只需要根据属性值找到它们.

例如我正在寻找“鸭子”这个词

<person name="Fred" thing="duck"/>
<person name="Mary"/>
<animal name="duck" thing="swims"/>

第一个和第三个应匹配,第二个不匹配.

有任何想法吗?

非常感谢.

解决方法

如果选择器可以做到这一点,那就不舒服了.但也许你可以尝试这样的事情:

final String input = "<person name="Fred" thing="duck"/>"
        + "<person name="Mary"/>"
        + "<animal name="duck" thing="swims"/>";


Document doc = Jsoup.parse(input);
Elements withAttr = new Elements();


for( Element element : doc.getAllElements() )
{
    for( Attribute attribute : element.attributes() )
    {
        if( attribute.getValue().equalsIgnoreCase("duck") )
        {
            withAttr.add(element);
        }
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读