Xml XPath:如何翻译多个字符串?

Xml XPath:如何翻译多个字符串?,xml,xpath,xpath-2.0,Xml,Xpath,Xpath 2.0,我试图在XPath中翻译一些字符串,但得到了一些奇怪的输出 这就是功能: translate(translate(translate(translate('1 day 23 hours 30 minutes 25 seconds','day','dag'),'hours','uur'),'minutes','minuut'),'seconds','seconden') 当前输出为: 1 dag 23 uur 30 minrut 25 tcund 但我需要的是:1 dag 23 uur 30

我试图在XPath中翻译一些字符串,但得到了一些奇怪的输出

这就是功能:

translate(translate(translate(translate('1 day 23 hours 30 minutes 25 seconds','day','dag'),'hours','uur'),'minutes','minuut'),'seconds','seconden')
当前输出为:

1 dag 23 uur 30 minrut 25 tcund 
但我需要的是:
1 dag 23 uur 30分钟25秒


有什么特殊的方法可以同时翻译多个子字符串吗?

这不是
translate()
的工作原理。翻译时:

translate('minutes seconds','hours','uur')
预期结果是:

minrte ecund
因为您实际上是在告诉处理器替换第二个参数中出现的前三个字母

'h', 'o', 'u'
因为它们出现在字符串“分-秒”中,并带有相应的字符

'u', 'u', 'r'
分别删除
'r'
's'
,因为它们在第三个参数中没有相应的替换项

如果要替换完整的单词,并且正在使用XPath 2.0,则可以使用
replace()
函数

replace(replace(replace(replace('1 day 23 hours 30 minutes 25 seconds','day','dag'),'hours','uur'),'minutes','minuut'),'seconds','seconden')