Нужно сохранять в скрипте COM объект между вызовами скрипта.
0 0
ред. 26 июля 2023 09:34
Недостаточно рейтинга для добавления отрицательного голоса. Шаблон будет скрыт из ваших результатов поиска.
Комментарии
bolsun #1, 26 июля 2023 10:32
Для этого можно использовать СохранитьЗначениеСеанса() ВосстановитьЗначениеСеанса().
Пример:
Перем RegExp;
ТурбоКонф = Новый ТурбоКонф;
ЭтоКэш = Истина;
RegExp = ТурбоКонф.ВосстановитьЗначениеСеанса("RegExp");
Если RegExp = Неопределено Тогда
ЭтоКэш = Ложь;
RegExp = Новый COMОбъект("VBScript.RegExp");
ТурбоКонф.СохранитьЗначениеСеанса("RegExp", RegExp);
КонецЕсли;
//Проверяем что COMОбъект работает
//Получить из строки значение productId в формате числа
ПроверяемаяСтрока = "?productId=3453466&vendorId=02";
RegExp.MultiLine = Истина;
RegExp.Global = Истина;
RegExp.IgnoreCase = Истина;
// \d+ - последовательность чисел, не меньше 1 символа
// скобки - захватить значение в отдельную группу
RegExp.Pattern = "productId=(\d+)";
Matches=RegExp.Execute(ПроверяемаяСтрока);
Если Matches.Count > 0 Тогда
SubMatch = Matches.Item(0);
//Получаем значение первой захваченной группы
productId= SubMatch.SubMatches.Item(0);
ТурбоКонф.ПоказатьВсплывающееУведомление("Из кэша: " + Строка(ЭтоКэш), "productId: " + productId);
КонецЕсли;
#1, 26 июля 2023 10:32
Для этого можно использовать СохранитьЗначениеСеанса() ВосстановитьЗначениеСеанса().
Пример:
#2, 26 июля 2023 15:31
bolsun изменил статус на Закрыто