在XSL变量中搜索并插入换行符

时间:2012-08-03 23:36:20

标签: xml xslt xml-parsing xslt-2.0

我现在一直在搞这个,我希望你们能帮忙。 所以我有一个像

这样的XSL变量
<xsl:variable name="blah" select="'texttexttext texttexttexttext Note:texttexttexttext'" />

我要做的是首先在$ blah中搜索“Note:”。如果找到,请在&#xD;之前添加换行符。所以输出就像

blah-> "'texttexttext texttexttexttext &#xD;Note:texttexttexttext'"

我可以使用通常的包含函数来搜索术语,如:

<xsl:if test="(contains($blah,'Note:'))">true</xsl:if>

但是我对换行/插入换行符感到困惑

1 个答案:

答案 0 :(得分:1)

XSLT 2.0带有一些很好的正则表达式函数。

通过使用替换功能:

replace($blah, "(.*)(Note:.*)", "$1&amp;#xD;$2")

你将获得理想的结果。所以基本上,我在Note:之前和之后捕捉所有内容,我只是在结果之间插入你的换行符。