所以我想创建这个字符串:
insert into TABLE values(651665, 'c e d b f a i');
我已经设法用Xpath创建这个字符串:
concat('insert into TABLE values(', //OneNode/@id, ', `', //myNode, '`);')
这给了我:
insert into TABLE values(651665, ` c e d b f a i `);
但现在我想替换`by'。有没有办法在Xpath 1.0中做到这一点?
答案 0 :(得分:2)
包装易读:
concat(
'insert into TABLE values(',
"'",
//OneNode/@id,
', ',
//myNode,
"'",
');'
)
XPath字符串可以以"
或'
开头,并且它们不能包含其分隔符,即没有字符串转义机制。
这意味着上面的内容是有效的XPath,但是需要额外的转义才能使这个有效的XML内部属性(如XSLT <xsl:value-of select="..." />
):
<xsl:value-of select="
concat(
'insert into TABLE values(',
"'",
//OneNode/@id,
', ',
//myNode,
"'",
');'
)
" />