Возможно, имеется в виду, 3 любых подряд стоящих одинаковых букв в верхнем регистре (найдёт ровно 3 буквы, меньше и больше 3 не найдёт)
([A-Z])(?<!\1.)\1{2}(?!\1)
У вас же есть функция handleButtonClick, добавьте в неё window.kakyato_peremennaya = buttonValue;
И после отработки клика на кнопке забирайте жсом значение - return window.kakyato_peremennaya;
Этот пример рабочего кода, который из вашей страницы сделан (сначала только нужно нажать чекбокс).
Можете для удобства в хроме зайти на эту страницу и ПКМ -> показать код.
В консоли тестируете js, затем переносите в зену.
Метамаск находится за shadow-dom.
Только через js или поиск по картинке.
Что-то вроде -
var mtm = document.getElementsByTagName('onboard-v2')[0]
.shadowRoot
.querySelector('div[class*="name"]')...
Не обязательно, можно и на кубиках. А всем кубикам, которые связаны с элементами на странице вывести по красной на паузу, а с паузы на тот же кубик. Если выскочит капча, то шаблон зациклиться, пока асинхрон не решит капчу.
Надо преобразовать массив данных в строку. Например, можно так:
var zt = project.Tables["tmp"];
string tosql = "";
for(int i = 0; i < zt.RowCount; i++){
string name = zt.GetCell("A",i);
string age = zt.GetCell("B",i);
tosql += $"('{name}', '{age}'),";
}
return "INSERT INTO zennolab...
Обязательно регулярку?
Первый кубик - Split по точке.
Второй кубик - Replace запятой на пустоту
Или кодом в один кубик:
return project.Variables["tmp"].Value.Split('.')
.First().Replace(",","");
Тогда мало информации.
Надо проверить изменение, какого-то конкретного элемента в JSON или сам факт любого увеличения?
Ещё возможен вариант добавления нового товара, тогда по какой ветке выходить?
DateTime pdate = DateTime.Parse(project.Variables["data"].Value);
// Если дата в data меньше, чем текущая, выходим по красной.
if( pdate < DateTime.Now){
return null;
}
Велосипедный способ:
перед использованием сделать резервную копию екселевского файла.
var zt_orig = project.Tables["t1"];
lock (FileSyncObjects.TableSyncer)
{
List<List<string>> orig = new List<List<string>>
{
};
//Копировать оригинал
for (int i = 0; i < zt_orig.RowCount...
Возможно это код подойдёт для поиска точных дублей:
//Исходный список
var zl = project.Lists["s1"];
//Результирующая таблица
var zt = project.Tables["t1"];
zt.Clear();
Dictionary<string,List<string>> dubli = new Dictionary<string,List<string>> {};
zl.ToList().ForEach( item => {...