Как разобрать строку или значение чего-либо в xslt

Я новичок в xslt, пытаясь захватить и оценить IP-адрес пользователя через authzrule, используя xslt. Я знаю, что IP может быть оценен с помощью azn_cred_ip_address

<xsl:choose>
<xsl:when test=" azn_cred_ip_address = '100.200.300.400'">!TRUE!</xsl:when>
<xsl:otherwise>!FALSE!</xsl:otherwise>
</xsl:choose>

Однако IP-адрес не всегда одинаков, но я хочу проверить, являются ли первые 3 цифры 100. Как я могу изменить вышеприведенный xslt, чтобы увидеть, начинается ли IP со 100 или нет?

2 ответа

Решение

Вы могли бы использовать substring-before здесь (так как это также будет работать, если первое число будет меньше 3 цифр).

<xsl:when test="substring-before(azn_cred_ip_address, '.') = '100'">!TRUE!</xsl:when>

Вероятно, самый прямой перевод теста будет

<xsl:when test="starts-with(azn_cred_ip_address,'100.')">
Другие вопросы по тегам