Я работаю над функцией CMS, где пользователь может добавлять метаданные к изображениям. Источник Option используется для создания обратной ссылки на исходную главную страницу/главную страницу.Удалить http (s): // в XSLT 1.0
Этот случай работает finde для определения, ссылка должна отображаться или только ресурс.
Но у меня есть проблемы с удалением http(s)://
из a href
ссылки, так как это не выглядит хорошо (ссылка IST хранящуюся в $image_source)
.
К сожалению, XSLT 1.0 не поддерживает метод replace()
.
есть ли простой обходной путь для этого? в противном случае вариант я должен был бы больше шаблона с substring-after()
.
<xsl:if test="$image_source!=''">
<xsl:choose>
<xsl:when test="starts-with($image_source, 'http://') or starts-with($image_source ,'https://')">
<span class="image-meta-source">
<a href="{$image_source}" title="{$image_title}">
<xsl:value-of select="$image_source"/>
</a>
</span>
</xsl:when>
<xsl:otherwise>
<span class="image-meta-source"><xsl:value-of select="$image_source"/></span>
</xsl:otherwise>
</xsl:choose>
</xsl:if>
Обычно я хотел бы использовать RegEx ее e, но afaik это не поддерживается (как много полезных функций) в XSLT 1.0. Регулярное выражение, о котором я мог думать, было бы ^(http|https)://
Есть ли шанс использовать это?
не могли бы вы сделать 'подстроку-после ($ image_source, '//')', возможно? –
@TimC Yup, см. Answoer of michael. Я действительно не знаю, почему я пытался сделать это сложным. – TechTreeDev