如何在XSLT中使用fn:replace(string,pattern,replace)

Tho*_*eld 7 xml xslt

如何使用

      fn:replace(string,pattern,replace) 
Run Code Online (Sandbox Code Playgroud)

在XSLT中

就像<fn:replace(...)/> ??

pol*_*nts 15

该函数指定如下:

fn:replace($input, $pattern, $replacement, [$flags])

$input        xs:string?  the string to change
$pattern      xs:string   regular expression to match the areas to be replaced
$replacement  xs:string   the replacement string
$flags        xs:string   flags for multiline mode, case insensitivity, etc
return value  xs:string
Run Code Online (Sandbox Code Playgroud)

请注意,这$pattern是一个正则表达式,替换字符串也有一些特殊的替换语法.

这里有些例子:

# simple replacement
replace('query', 'r', 'as')               queasy

# character class
replace('query', '[ry]', 'l')             quell

# capturing group substitution
replace('abc123', '([a-z])', '$1x')       axbxcx123

# practical example
replace('2315551212',                     (231) 555-1212
    '(\d{3})(\d{3})(\d{4})',
    '($1) $2-$3'
)
Run Code Online (Sandbox Code Playgroud)

参考


nai*_*kus 5

我想你是这样做的:

<xsl:value-of select="fn:replace(value, 'some-pattern', 'with some text')" />
Run Code Online (Sandbox Code Playgroud)

编辑:

在stackoverflow上找到这个问题