<?xml version="1.0"?>
<Table>
    <Row>
      <Cell>A</Cell>
      <Cell>3</Cell>
      <Cell></Cell>
      <Cell>B</Cell>
      <Cell>6</Cell>
    </Row>
</Table>------------------
XmlPath怎样查找出 <Cell>节点中Text不是数字的节点?
不是要一个个去检测。

解决方案 »

  1.   

    System.Xml.XmlDocument d = new System.Xml.XmlDocument();
    d.LoadXml(@"<?xml version='1.0'?>
    <Table>
    <Row>
      <Cell>A</Cell>
      <Cell>3</Cell>
      <Cell></Cell>
      <Cell>B</Cell>
      <Cell>6</Cell>
    </Row>
    </Table>");
    System.Xml.XmlNodeList ns = d.SelectNodes("/Table/Row/Cell[number(.) > 0]");
    foreach(System.Xml.XmlNode n in ns)
    {
      MessageBox.Show(n.InnerText);
    }
      

  2.   

    "/Table/Row/Cell[number(.) > 0]"
    即可
      

  3.   

    System.Xml.XmlNodeList ns = d.SelectNodes("/Table/Row/Cell[not(number(.) > 0)]");
    刚才翻;了
      

  4.   

    System.Xml.XmlNodeList ns = d.SelectNodes("/Table/Row/Cell[not(number(.) > 0) and  and normalize-space(text())!='' and normalize-space(text())!= 0]");这样就全了,多谢