Как использовать fn: replace (string,pattern,replace) в XSLT

Как использовать

      fn:replace(string,pattern,replace) 

в XSLT

это похоже на ??

2 ответов


функция определяется следующим образом:

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

отметим, что $pattern это регулярные выражения, а строка замены также имеет специальный синтаксис подстановки.

вот несколько примеров:

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

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

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

# practical example
replace('2315551212',                     (231) 555-1212
    '(\d{3})(\d{3})(\d{4})',
    '() -'
)

ссылки


Я думаю, вы делаете это так:

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

Edit:

нашел это вопрос о stackoverflow