在XPATH中获取属性的子字符串

Kit*_*nde 21 string xpath substring

特定

<foo>
  <bar baz="Hello, World!">
</foo>
Run Code Online (Sandbox Code Playgroud)

除了@baz的最后4个字符外,我怎么办?我的一个尝试是:

/foo/bar/@baz[substring( ., 0, -4 )]
Run Code Online (Sandbox Code Playgroud)

Dim*_*hev 19

用途:

substring(/foo/bar/@baz, string-length(/foo/bar/@baz)-3) 
Run Code Online (Sandbox Code Playgroud)

请注意3表达式中的内容.

以下是错误的:

substring(/foo/bar/@baz, string-length(/foo/bar/@baz)-4) 
Run Code Online (Sandbox Code Playgroud)

因为它返回baz属性的字符串值的最后5个字符.


小智 8

试试这个: substring-before(/foo/bar/@baz,"rld!")