如何在XQuery(exist db)中使用update动态搜索/替换文本

如何在XQuery(exist db)中使用update动态搜索/替换文本,xquery,exist-db,Xquery,Exist Db,我的意图是以某种方式自动清理源文件。在XQuery中如何做到这一点?(我对在内存中重建文档并将其存储为新文档不感兴趣。)对于直接寻址的简短元素,可以很容易地执行类似操作,但是,如果可能的话,我不知道如何为所有文本节点动态执行此操作 我希望这样的事情能够奏效: update replace $div[contains(., 'chapter')] with replace(., 'chapter', 'Chapter') 这将为“self::node()”[源代码:String] 显然,在替换函

我的意图是以某种方式自动清理源文件。在XQuery中如何做到这一点?(我对在内存中重建文档并将其存储为新文档不感兴趣。)对于直接寻址的简短元素,可以很容易地执行类似操作,但是,如果可能的话,我不知道如何为所有文本节点动态执行此操作

我希望这样的事情能够奏效:

update replace $div[contains(., 'chapter')] with replace(., 'chapter', 'Chapter')
这将为“self::node()”[源代码:String]


显然,在替换函数中使用
处理上下文时存在问题。但我可能不太明白一般的
update
这件事。我的灵感来自于的底部。

带的
右侧的表达式独立于左侧的表达式。因此,这两部分都需要明确的节点/上下文:

update replace $div[contains(., 'chapter')] with replace($div, 'chapter', 'Chapter')

右侧的表达式独立于左侧的表达式。因此,这两部分都需要明确的节点/上下文:

update replace $div[contains(., 'chapter')] with replace($div, 'chapter', 'Chapter')

将第二个
替换为
$div
?它似乎可以工作,像往常一样有趣!如果可以的话,请把答案贴出来,我会确认的。非常感谢。将第二个
替换为
$div
?它似乎可以工作,一如既往地有趣!如果可以的话,请把答案贴出来,我会确认的。谢谢。