[xsl] Is it possible to use replace with an variable for entities?

Subject: [xsl] Is it possible to use replace with an variable for entities?
From: "Torsten Schaßan schassan@xxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Thu, 7 Jul 2022 05:35:59 -0000
o;?Dear colleagues,

I need to replace Unicode references (encoded in RTF) with entities via XSLT.

My replace command would look like these for example:

replace($value, '\\u7936', 'a<')
replace($value, '\\u183 \\\^b7', 'B7')

Now I want to avoid to have x-times (nested?) replaces for each character, but
would like to use a variable like this:

replace($value, '\\u(\d{4})', '&#$1;')
replace($value, '\\u(\d{3}) \\\^[0-9a-z]{2}', '&#$1;')

This, unfortunately, throws an error, as '&#$1;' is no valid entity
declaration.

Additionally, my parser doesn't allow to use map:keys($rtfEncodingMap).

Is there a workaround or a solution I might have missed?



Best,
Torsten
--
Torsten Schassan - Abteilung Handschriften und Sondersammlungen / Digitale
Editionen
Herzog August Bibliothek, D-38299 Wolfenbuettel, Tel.: +49 5331 808-130 Fax
-165
Handschriftendatenbank: https://diglib.hab.de/?db=mss

Current Thread