Я видел паттерны для перевода строки в нижний (или верхний регистр) с использованием функции перевода для людей, застрявших с использованием xslt 1.0.
Есть ли элегантный способ сделать первую букву строки строчной?
TestCase => testCase
Если ваша строка была, например, в атрибуте с именем name:
name
<xsl:value-of select="concat(translate(substring(@name, 1, 1), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'), substring(@name, 2))"/>
Вы можете комбинировать подстроку и concat с переводом, чтобы сделать это так:
concat(translate(substring(s,1,1), $smallcase, $uppercase),substring(s,2))
XSLT имеет функцию подстроки, поэтому вы можете использовать этот шаблон с функцией подстроки, чтобы получить то, что вы хотите.
Используйте функцию XPath translate, разделив строку на первый символ и остальные. Для этого потребуется несколько затянувшийся XSLT с использованием нескольких переменных для хранения промежуточных результатов.
translate