Как использовать заменить строку в xslt. Пробовал пару вещей. Но все еще не работает. Пожалуйста, предложите - PullRequest
0 голосов
/ 24 сентября 2019

У меня есть строка со значением Brands = sansui AND LoadCapacity! = 8 AND ColorVariants! = '' AND ModelType = FrontLoad

Я хочу заменить строку, которая является"! = '' " с " = Any ".

Желаемый вывод, если выведите в печать мою переменную

Brands = sansui ANDLoadCapacity! = 8 AND ColorVariants = Any AND ModelType = FrontLoad

Ниже приведен пример кода.

<xsl:call-template name="replace_fn"><xsl:with-param name="NodeMaster1" select="$myvariable"/></xsl:call-template>
<xsl:template name="replace_fn">
    <xsl:param name="NodeMaster1"/>
    <xsl:variable name="vApos">'</xsl:variable> 
    <xsl:variable name="vAny_Condtion" select="concat(' != ',$vApos,$vApos)"/>  
    <xsl:choose>    
        <xsl:when test="contains($NodeMaster1,$vAny_Condtion)">
                <xsl:variable name="NodeMaster2" select="substring-before($NodeMaster1,$vAny_Condtion)"/>                       
                <xsl:value-of select="$NodeMaster2"/>
                <xsl:value-of select="' = Any'"/>
                <xsl:variable name="NodeMaster3" select="substring-after($NodeMaster1,$vAny_Condtion)"/>

                <xsl:call-template name="replacewidspace">
                    <xsl:with-param name="NodeMaster1" select="$NodeMaster3"/>
                </xsl:call-template>            
        </xsl:when> 
        <xsl:otherwise>     
            <xsl:value-of select="$NodeMaster1"/>           
        </xsl:otherwise>    
    </xsl:choose>
</xsl:template>
...