如果url包含/ market / 3,我想知道是否有任何url逻辑。像:
<xsl:variable name="cultureRequest" select="concat('http://',MAIN_URL)" />
<xsl:if test="contains($cultureRequest, '/market/3')" >
</xsl:if>
答案 0 :(得分:0)
嗯,有没有办法检查网址是否包含/ market / 3 /?
正如我在评论中所说,是的,这是可能的。只要URL是字符串即可。但是你必须要知道,不意味着XSLT将此字符串视为URL。它仍然认为它是一个字符串。
例如,您的代码段使用以下输入:
<?xml version="1.0" encoding="UTF-8"?>
<MAIN_URL>www.main-url.com/market/3/xs.htm</MAIN_URL>
然后,您可以应用如下所示的样式表。如果yes
函数返回true,则输出contains
元素。
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:output method="xml" encoding="UTF-8" indent="yes" />
<xsl:template match="/">
<xsl:variable name="cultureRequest" select="concat('http://',MAIN_URL)" />
<xsl:if test="contains($cultureRequest, '/market/3')" >
<yes>!</yes>
</xsl:if>
</xsl:template>
</xsl:transform>
XML输出
网址包含/market/3
,因此输出为:
<?xml version="1.0" encoding="UTF-8"?>
<yes>!</yes>
注意:有两件事我对你的问题不了解,我试着在评论中询问:
http;//
它到contains
。