V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
Spectre
V2EX  ›  JavaScript

Xpath 选取 text 值

  •  1
     
  •   Spectre · 2016-10-20 15:44:57 +08:00 · 4043 次点击
    这是一个创建于 2951 天前的主题,其中的信息可能已经有所发展或是发生改变。

    ddd aaa bbb

    如何选取 aaa 的值哇!!

    11 条回复    2016-10-22 14:54:16 +08:00
    imn1
        1
    imn1  
       2016-10-20 15:51:01 +08:00
    不能,正则吧
    Spectre
        2
    Spectre  
    OP
       2016-10-20 15:54:51 +08:00
    @imn1 好像上面没显示出来 是这种<span></span>aaa<span></span> 我要获取 aaa 的值
    imn1
        3
    imn1  
       2016-10-20 16:10:08 +08:00
    /xpath/text()
    hw20686832
        4
    hw20686832  
       2016-10-20 16:12:23 +08:00
    xpath2.0 有个 tokenize 方法,类似于 Python 的 split
    argsno
        5
    argsno  
       2016-10-20 16:15:47 +08:00
    text()
    anguskwan
        6
    anguskwan  
       2016-10-20 16:20:57 +08:00
    楼主要取 xml 里的第二个孩子,还是 text 里第二列?
    cuebyte
        7
    cuebyte  
       2016-10-20 16:28:12 +08:00
    text() 取出来自己做个 split(' ')[1] 啊
    Honwhy
        8
    Honwhy  
       2016-10-20 16:28:40 +08:00
    ```
    NodeList spanNode = (NodeList) xpath.evaluate("/widgets/widget[3]/node()", inputSource, XPathConstants.NODESET);
    for(int i = 0; i < spanNode.getLength(); i++) {
    Node node = spanNode.item(i);
    if(node.getNodeType() == Node.TEXT_NODE) {
    System.out.println(spanNode.item(i).getTextContent());
    }
    }
    ```
    ```
    <?xml version="1.0" encoding="UTF-8" ?>
    <widgets xmlns:prefix="http://www.eclipse.org/birt/2005/design">
    <widget>
    <manufacturer/>
    <dimensions/>
    </widget>
    <widget>
    <manufacturer/>
    <dimensions>101</dimensions>
    <attr1 name="honey">10333</attr1>
    </widget>
    <widget>
    <span>bbb</span>
    aaa
    <span>ccc</span>
    </widget>
    </widgets>
    ```
    dsg001
        9
    dsg001  
       2016-10-21 21:22:22 +08:00
    dom 操作用 xpath , text 操作用 re
    Spectre
        10
    Spectre  
    OP
       2016-10-22 00:31:57 +08:00
    @dsg001 re 是啥。。没用过。。
    dsg001
        11
    dsg001  
       2016-10-22 14:54:16 +08:00
    @Spectre 正则
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2959 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 14:55 · PVG 22:55 · LAX 06:55 · JFK 09:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.