我想打印这样的 TSV 输出。但是当$x/span
没有找到任何东西时,只会打印两列。什么都没找到时如何在第二列中插入一个空字段$x/span
?谢谢。
for $x in //td/b/a[@title]/parent::b/parent::td
return join(
(
$x/b/a/@title
, $x/span
, $x/p
)
, x:cps(9)
)
XPath:
//td[b/a[@title]]/join(
(
b/a/@title,
(span,"")[1],
p
),
x:cps(9)
)
查询:
for $x in //td[b/a[@title]] return
$x/join(
(
b/a/@title,
(span,"")[1],
p
),
"	"
)
一个常见的成语是
($x/span, "default")[1]
$x/span
但是,如果可以选择多个项目,这可能不适合您。
您可以使用语句来控制在缺少span标签if/else
的情况下要做什么。
if (empty($x/span)) then
(: do what you need here :)
else
$x/span