XPath/XQuery函数:字符串
Altova的字符串扩展函数可用于XPath和XQuery表达式,并提供用于处理数据的额外功能。本部分中的函数可以与Altova的XPath 3.0和XQuery 3.0引擎一起使用。它们都在XPath/XQuery上下文中可用。
Altova扩展函数可以在XPath/XQuery表达式中使用。除了XPath、XQuery和XSLT标准函数库中可用的功能外,它们还提供了额外的功能。Altova扩展函数在Altova扩展函数命名空间中,http://www.altova.com/xslt-extensions,并在本部分中用altova:前缀表示,假定它与该命名空间绑定。请注意,这些函数可能在未来的产品版本中不被支持,或者个别函数的行为可能会发生变化。有关每个产品版本中对Altova扩展函数的支持的信息,请参见该版本的文档。
|
altova:camel-case(InputString as xs:string) as xs:string XP3.1 XQ3.1 将以骆驼拼写法形式返回输入字符串InputString。该字符串将使用正则表达式'\s'(即空白字符的快捷键)进行分析。在一个空白或连续空白后的第一个非空白字符将被大写。输出字符串中的第一个字符将被大写。
altova:camel-case(InputString as xs:string, SplitChars as xs:string, IsRegex as xs:boolean) as xs:string XP3.1 XQ3.1 通过使用SplitChars来确定触发下一个大写的字符,将输入字符串InputString转换为其骆驼拼写法形式。SplitChars在IsRegex = true()时被用作正则表达式,在IsRegex = false()时被用作普通字符。输出字符串中的第一个字符将被大写。
|
altova:char(Position as xs:integer) as xs:string XP3.1 XQ3.1 返回一个字符串,其中包含Position参数所指定的位置上的字符,在通过将上下文项的值转换为xs:string得到的字符串中。如果Position参数所提交的索引号对应的字符不存在,则生成的字符串将为空。
altova:char(InputString as xs:string, Position as xs:integer) as xs:string XP3.1 XQ3.1 返回一个字符串,其中包含由Position参数指定的位置上的字符,在作为InputString参数提交的字符串中。如果Position参数所提交的索引号对应的字符不存在,则生成的字符串将为空。
|
altova:create-hash-from-string(InputString as xs:string) as xs:string XP2 XQ1 XP3.1 XQ3.1 altova:create-hash-from-string(InputString as xs:string, HashAlgo as xs:string) as xs:string XP2 XQ1 XP3.1 XQ3.1 通过使用HashAlgo参数所指定的哈希算法来从InputString生成一个哈希字符串。可以指定以下哈希算法(大写或小写):MD5,SHA-1, SHA-224, SHA-256, SHA-384, SHA-512。如果未指定第二个参数(参见上方第一个签名),则将使用SHA-256哈希算法。
|
altova:first-chars(X-Number as xs:integer) as xs:string XP3.1 XQ3.1 返回一个字符串,其中包含通过将上下文项的值转换为xs:string得到的字符串中的第X-Number个字符。
altova:first-chars(InputString as xs:string, X-Number as xs:integer) as xs:string XP3.1 XQ3.1 返回一个字符串,其中包含作为InputString参数提交的字符串中的第X-Number个字符。
|
altova:format-string(InputString as xs:string, FormatSequence as item()*) as xs:string XP3.1 XQ3.1 输入字符串(第一个参数)包含位置参数(%1, %2等)。每个参数都将被格式序列(作为第二个参数提交)中相应位置的字符串项替代。因此,格式序列中的第一个项将替换位置参数%1,第二个项将替换%2,以此类推。该函数将返回这类包含替换项的经过格式设置的字符串。如果位置参数没有对应的字符串,则将返回位置参数自身。这类情况通常在位置参数的索引号大于格式序列中的项数时会发生。
|
altova:last-chars(X-Number as xs:integer) as xs:string XP3.1 XQ3.1 返回一个字符串,其中包含通过将上下文项的值转换为xs:string得到的字符串中的后X-Number个字符。
altova:last-chars(InputString as xs:string, X-Number as xs:integer) as xs:string XP3.1 XQ3.1 返回一个字符串,其中包含作为InputString参数提交的字符串中的后X-Number个字符。
|
altova:pad-string-left(StringToPad as xs:string, StringLength as xs:integer, PadCharacter as xs:string) as xs:string XP3.1 XQ3.1 PadCharacter参数是一个单一的字符。它被填充到字符串的左侧以增加StringToPad中的字符数,使该值将等于StringLength参数的整数值。StringLength参数可以具有任何整数值(正数或负数),但仅在StringLength的值大于StringToPad中的字符数时才会发生填充。如果StringToPad中的字符数大于StringLength的值,则StringToPad将保持不变。
|
altova:pad-string-right(StringToPad as xs:string, StringLength as xs:integer, PadCharacter as xs:string) as xs:string XP3.1 XQ3.1 PadCharacter参数是一个单一的字符。它被填充到字符串的右侧以增加StringToPad中的字符数,使该值将等于StringLength参数的整数值。StringLength参数可以具有任何整数值(正数或负数),但仅在StringLength的值大于StringToPad中的字符数时才会发生填充。如果StringToPad中的字符数大于StringLength的值,则StringToPad将保持不变。
|
altova:repeat-string(InputString as xs:string, Repeats as xs:integer) as xs:string XP2 XQ1 XP3.1 XQ3.1 将生成一个字符串,该字符串由重复Repeats次的第一个InputString参数组成。
|
altova:substring-after-last(MainString as xs:string, CheckString as xs:string) as xs:string XP3.1 XQ3.1 如果在MainString中可以找到CheckString,则返回MainString中CheckString之后的子字符串。如果在MainString中没有找到CheckString,则返回空字符串。如果CheckString是一个空字符串,则将返回完整的MainString。如果在MainString中可以找到CheckString的多个匹配项,则返回最后一个CheckString匹配项之后的子字符串。
|
altova:substring-before-last(MainString as xs:string, CheckString as xs:string) as xs:string XP3.1 XQ3.1 如果在MainString中可以找到CheckString,则返回MainString中CheckString之前的子字符串。如果在MainString中没有找到CheckString,或CheckString是一个空字符串,则返回空字符串。如果在MainString中可以找到CheckString的多个匹配项,则返回最后一个CheckString匹配项之前的子字符串。
|
altova:substring-pos(StringToCheck as xs:string, StringToFind as xs:string) as xs:integer XP3.1 XQ3.1 返回StringToFind在StringToCheck中第一次出现的字符位置。字符位置将以整数形式返回。StringToCheck的第一个字符对应的位置为1。如果在StringToCheck中没有找到StringToFind,则返回整数0。要查找在StringToCheck中第二个或之后的匹配项,请使用该函数的下一个签名。
altova:substring-pos(StringToCheck as xs:string, StringToFind as xs:string, Integer as xs:integer) as xs:integer XP3.1 XQ3.1 返回StringToFind在StringToCheck中的字符位置。对StringToFind的搜索将从Integer参数所指定的字符位置开始;该位置之前的字符串不会被搜索。然而,返回的整数是找到的字符串在整个StringToCheck中的位置。此签名对于查找在StringToCheck中多次出现的字符串的第二个或后面的位置很有用。如果在StringToCheck中没有找到StringToFind,则返回整数0。
|
altova:trim-string(InputString as xs:string) as xs:string XP3.1 XQ3.1 该函数取一个xs:string参数,去除前导和尾随的空白,并返回一个经过了裁剪的xs:string。
|
altova:trim-string-left(InputString as xs:string) as xs:string XP3.1 XQ3.1 该函数取一个xs:string参数,去除前导空白,并返回一个左侧经过了裁剪的xs:string。
|
altova:trim-string-right(InputString as xs:string) as xs:string XP3.1 XQ3.1 该函数取一个xs:string参数,去除尾随的空白,并返回一个右侧经过了裁剪的xs:string。
|