[xsl] Including markup in a replace string

Subject: [xsl] Including markup in a replace string
From: "Craig Sampson craig.sampson@xxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Thu, 6 Oct 2016 13:09:20 -0000
Hi All,
  I have code examples in some doc that are post processed in AngularJS. In
some cases the code examples include "{{" or "}}" which is significant to
Angular. I have a simple replace that I am using to wrap a no-process span
around the curly braces so the Angular process will ignore them.

  <xsl:value-of select="replace(.,'(\{\{|\}\})','&lt;span
class=&quot;noProcess&quot;&gt;$1&lt;/span&gt;')"/>

  The only problem is that the character entity is being output as a character
entity instead of less-than and greater-than characters.

  Is there a way to trick replace into outputting the less-than and
greater-than characters?

  I've tried entering the actual characters - doesn't work. I've tried
escaping the characters with backslashes - doesn't work either.

  So unless there's a way to trick replace I'll have to try analyze-string and
see if I can get what I need there.

Thanks,
  Craig

Here's an example of what I need:

<span class="noProcess">{{</span>This variable<span
class="noProcess">}}</span>

Current Thread