помогите с XSLT - замена значения атрибута тэга
☑
0
kittystark
26.01.23
✎
16:37
в некотором XML (для ЭДО), есть тэг
<Документ КНД="1115131" Функция="ДОП" ...>
нужно заменить его на
<Документ КНД="1115131" Функция="СЧФДОП" ...>
с помощью какого XSLT 1.0 можно это сделать?
попытка в лоб применить <xsl:attribute name="Функция">СЧФДОП</xsl:attribute>
выдает xsltParseStylesheetTop: unknown attribute element
1
kittystark
26.01.23
✎
17:21
<xsl:template match="@Функция='ДОП'">
<xsl:text>СЧФДОП</xsl:text>
</xsl:template>
не прокатывает
2
kittystark
26.01.23
✎
17:37
<xsl:when test="@Функция = 'ДОП'">
<xsl:text>СЧФДОП</xsl:text>
</xsl:when>
выдает ошибку xsltParseStylesheetTop: unknown when element
3
kittystark
27.01.23
✎
10:52
ап
4
kittystark
04.02.23
✎
20:59
после общения в соседней ветке решил привести решение
тхт = новый ТекстовыйДокумент();
тхт.Прочитать( имяФайла, "windows-1251" );
стр = тхт.ПолучитьТекст();
стр = RegExpReplace( стр, "Функция\s*=\s*""ДОП""", "Функция=""СЧФДОП""" );
тхт.УстановитьТекст( стр );
тхт.Записать( имяФайла, "windows-1251" );
5
kittystark
04.02.23
✎
21:00
Function RegExpReplace( str, pattern, replacement ) export
RegExp = new COMObject("vbscript.regexp");
RegExp.IgnoreCase = true;
RegExp.MultiLine = true;
RegExp.Global = true;
RegExp.Pattern = pattern;
return RegExp.Replace(str,replacement);
EndFunction
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой