Xml 用于创建文本分隔字符串的XPath表达式
编辑:我的软件似乎只支持XPath 1.0:( 我需要创建以下格式的分隔字符串:Xml 用于创建文本分隔字符串的XPath表达式,xml,xpath,eval,delimited-text,Xml,Xpath,Eval,Delimited Text,编辑:我的软件似乎只支持XPath 1.0:( 我需要创建以下格式的分隔字符串: 东西;A,1;B,2 从以下XML数据: <Table ss:ExpandedColumnCount="2" ss:ExpandedRowCount="3" x:FullColumns="1" x:FullRows="1" ss:DefaultRowHeight="15"> <Row> <Cell><Data ss:Type="String">Stuff<
东西;A,1;B,2
从以下XML数据:
<Table ss:ExpandedColumnCount="2" ss:ExpandedRowCount="3" x:FullColumns="1" x:FullRows="1" ss:DefaultRowHeight="15">
<Row>
<Cell><Data ss:Type="String">Stuff</Data></Cell>
<Cell><Data ss:Type="String">Things</Data></Cell>
</Row>
<Row>
<Cell><Data ss:Type="String">A</Data></Cell>
<Cell><Data ss:Type="Number">1</Data></Cell>
</Row>
<Row>
<Cell><Data ss:Type="String">B</Data></Cell>
<Cell><Data ss:Type="Number">2</Data></Cell>
</Row>
</Table>
这对我来说似乎是一种魔力,但我试过了
string-join((for $n in //Row return string-join($n/Cell, ',')), ';')
它的结果就是你所需要的
Stuff,Things;A,1;B,2
编辑:我忘了提到这只在xpath 2.0中起作用了嘿!这在xpath 2.0上非常有效,但我似乎遇到了一个“无效令牌”错误。我将表达式调整为以下转义格式,但似乎没有解决它:
string join($n in//Row return string join($n/Cell,&apos;),&apos;),&apos;)
再次感谢!我想说它在上面指定的页面上工作得很好,但是当我在其他地方使用它时,出现了无效令牌错误:)您能详细指定“其他地方”吗?:)我在XpatherizerNPP2.10中使用NotePad++进行了尝试,在Nintex Workflow 2010中也使用了“查询XPath”工具(我将使用此语句从excel文件中提取节点,并使用Nintex Workflow将它们作为字符串推送到数据库中)。XPatherizerNPP支持XPath2.0吗?遗憾的是,我的软件似乎只支持XPath1.0。。。啊。。。我希望我能不止一次投你一票!如果我能访问XPath2.0就好了……我最近将XPatherizer NPP更新为Unicode版本的NP++。这里有一个github项目:
Stuff,Things;A,1;B,2