对我来说,当我面对这种情况时,这是一个很大的不同(这里是我的故事:)
<?xml version="1.0" encoding="UTF-8"?>
<sentence id="S1.6">When U937 cells were infected with HIV-1,
<xcope id="X1.6.3">
<cue ref="X1.6.3" type="negation">no</cue>
induction of NF-KB factor was detected
</xcope>
, whereas high level of progeny virions was produced,
<xcope id="X1.6.2">
<cue ref="X1.6.2" type="speculation">suggesting</cue> that this factor was
<xcope id="X1.6.1">
<cue ref="X1.6.1" type="negation">not</cue> required for viral replication
</xcope>
</xcope>.
</sentence>
我需要提取标签之间的文本并聚合(通过连接)包括内部标签中的文本。
/node()
做/text()
了一半的工作
/text()
只返回不包含在内部标签中的文本,因为内部标签不是“文本节点”。您可能会想,“只提取包含在附加 xpath 中的内部标签中的文本”,但是,按原始顺序对文本进行排序变得具有挑战性,因为您不知道将内部标签中的聚合文本放置在哪里!因为您不知道知道在哪里放置来自内部节点的聚合文本。
- 当 U937 细胞被 HIV-1 感染时,
- 未检测到 NF-KB 因子的诱导
- ,而产生了高水平的后代病毒体,
- 表明该因素不是病毒复制所必需的
- .
最后,/node()
正是我想要的,因为它也从内部标签中获取文本。