спасибо, а как изменить код* на поиск номера строки по таблице?
Вот держите кому надо. Так и не нашел готового решения на форуме.спасибо, а как изменить код* на поиск номера строки по таблице?
* файл http://zennolab.com/discussion/threads/snipet-proverki-nalichija-stroki-v-spiske.10403/#post-74104
string table_1ColText1 = "0";//Номер столбика таблицы table_1 с текстовыми значениями для первой фильтрации Текст 1
var table_1 = project.Tables["Таблица 1"];//переменная для таблицы table_1
var chekVar1 = project.Variables["checkvar"].Value;//переменная для сравнения 1
int RowCount1 = project.Tables["Таблица 1"].RowCount;//Количество строк в таблице table_1
RowCount1 = RowCount1-1;//Количество строк-1 в таблице table_1
for (int m = 0; m<=RowCount1; m++)
{
if (table_1.GetCell(table_1ColText1, m) == chekVar1)
{
return m;
}
}
string table_1ColText1 = "0";//Номер столбика таблицы table_1 с текстовыми значениями для первой фильтрации Текст 1
var table_1 = project.Tables["Таблица 1"];//переменная для таблицы table_1
var chekVar1 = project.Variables["checkvar"].Value;//переменная для сравнения 1
int RowCount1 = project.Tables["Таблица 1"].RowCount;//Количество строк в таблице table_1
RowCount1 = RowCount1-1;//Количество строк-1 в таблице table_1
for (int m = 0; m<=RowCount1; m++)
{
if (table_1.GetCell(table_1ColText1, m).Contains(chekVar1))
{
return m;
}
}
Превосходно работает! Спасибо!Если код с последнего совета верный, то хватит просто заменить в нем 1 строку:
C#:string table_1ColText1 = "0";//Номер столбика таблицы table_1 с текстовыми значениями для первой фильтрации Текст 1 var table_1 = project.Tables["Таблица 1"];//переменная для таблицы table_1 var chekVar1 = project.Variables["checkvar"].Value;//переменная для сравнения 1 int RowCount1 = project.Tables["Таблица 1"].RowCount;//Количество строк в таблице table_1 RowCount1 = RowCount1-1;//Количество строк-1 в таблице table_1 for (int m = 0; m<=RowCount1; m++) { if (table_1.GetCell(table_1ColText1, m).Contains(chekVar1)) { return m; } }
Простите еще вопрос.Превосходно работает! Спасибо!
Метод String.Contains (String) (System) - MSDN - там описан метод и работа с регистром, если надо углубляться.Простите еще вопрос.
Этот экшн ищет любое совпадение символов, как сделать, чтобы искал целые слова?
Спасибо.
Да именно так. Нужно еще без учета регистра. Если покажете пример, буду рад. Спасибо!Метод String.Contains (String) (System) - MSDN - там описан метод и работа с регистром, если надо углубляться.
Не совсем понял вопроса. Типа надо чтобы при поиске по слову "форум" находило только "бла бла бла форум бла бла", но не "бла бла бла форумы блабла" ?
Да именно так. Нужно еще без учета регистра. Если покажете пример, буду рад. Спасибо!
string table_1ColText1 = "0";//Номер столбика таблицы table_1 с текстовыми значениями для первой фильтрации Текст 1
var table_1 = project.Tables["Таблица 1"];//переменная для таблицы table_1
var chekVar1 = project.Variables["checkvar"].Value;//переменная для сравнения 1
int RowCount1 = project.Tables["Таблица 1"].RowCount;//Количество строк в таблице table_1
RowCount1 = RowCount1-1;//Количество строк-1 в таблице table_1
for (int m = 0; m<=RowCount1; m++)
{
string pattern = "\\b" + Regex.Escape(chekVar1) + "\\b"; // формируем регулярку на основе экранированной фразы поиска и границ слова на ее краях
Match match = Regex.Match(table_1.GetCell(table_1ColText1, m), pattern, RegexOptions.IgnoreCase); // если не надо без учета регистра, то удалите: ", RegexOptions.IgnoreCase"
if (match.Success)
{
return m;
}
}
return "не нашли ничего";
Спасибо огромное!C#:string table_1ColText1 = "0";//Номер столбика таблицы table_1 с текстовыми значениями для первой фильтрации Текст 1 var table_1 = project.Tables["Таблица 1"];//переменная для таблицы table_1 var chekVar1 = project.Variables["checkvar"].Value;//переменная для сравнения 1 int RowCount1 = project.Tables["Таблица 1"].RowCount;//Количество строк в таблице table_1 RowCount1 = RowCount1-1;//Количество строк-1 в таблице table_1 for (int m = 0; m<=RowCount1; m++) { string pattern = "\\b" + Regex.Escape(chekVar1) + "\\b"; // формируем регулярку на основе экранированной фразы поиска и границ слова на ее краях Match match = Regex.Match(table_1.GetCell(table_1ColText1, m), pattern, RegexOptions.IgnoreCase); // если не надо без учета регистра, то удалите: ", RegexOptions.IgnoreCase" if (match.Success) { return m; } }
гугли:Всем привет! А как будет выглядеть сниппет по частичному совпадению, но без учета регистра? По сути в сниппет 1 нужно вставить это условие, но где и как непонятно. Также интересует как получить несколько строк, содержащих частичное совпадение.
if (table_1.GetCell(table_1ColText1, m).Contains(chekVar1))
if (table_1.GetCell(table_1ColText1, m).ToLower().Contains(chekVar1.ToLower()))
Здравствуйте, а можно открыть доступ? Лицензию купила.
Напишите на [email protected] в письме укажите емейл от аккаунта на форуме и емейл от Кабинета.Здравствуйте, а можно открыть доступ? Лицензию купила.
у меня почему то этот код вываливается с ошибкой "Выполнение действия CSharp OwnCode. Последовательность не содержит соответствующий элемент"Вот держите кому надо. Так и не нашел готового решения на форуме.
Этот сниппет ищет по столбцу 0 совпадения с переменной и если находит то возвращает (прим. для новичков "Выдает" номер строки с этим совпадением).
Код:string table_1ColText1 = "0";//Номер столбика таблицы table_1 с текстовыми значениями для первой фильтрации Текст 1 var table_1 = project.Tables["Таблица 1"];//переменная для таблицы table_1 var chekVar1 = project.Variables["checkvar"].Value;//переменная для сравнения 1 int RowCount1 = project.Tables["Таблица 1"].RowCount;//Количество строк в таблице table_1 RowCount1 = RowCount1-1;//Количество строк-1 в таблице table_1 for (int m = 0; m<=RowCount1; m++) { if (table_1.GetCell(table_1ColText1, m) == chekVar1) { return m; } }
Дорогой друг, подскажи еще такой вариантвсе, я спать )).
(?<={-Variable.request-}).*Сделать
(?<=25\.06\.2020).*(?=Сделать)
хз, я с ними еще не работал новыми встроенными функциями зенки.а с гугл таблицами работает?
Помогите, пожалуйста! Как этот код заставить искать номер строки по совпадению не из одного столбца, а из нескольких.Вот держите кому надо. Так и не нашел готового решения на форуме.
Этот сниппет ищет по столбцу 0 совпадения с переменной и если находит то возвращает (прим. для новичков "Выдает" номер строки с этим совпадением).
Код:string table_1ColText1 = "0";//Номер столбика таблицы table_1 с текстовыми значениями для первой фильтрации Текст 1 var table_1 = project.Tables["Таблица 1"];//переменная для таблицы table_1 var chekVar1 = project.Variables["checkvar"].Value;//переменная для сравнения 1 int RowCount1 = project.Tables["Таблица 1"].RowCount;//Количество строк в таблице table_1 RowCount1 = RowCount1-1;//Количество строк-1 в таблице table_1 for (int m = 0; m<=RowCount1; m++) { if (table_1.GetCell(table_1ColText1, m) == chekVar1) { return m; } }
может ли кто-то допилить код, чтобы искало не одно первое совпадение, а все, и клало номера их строк в список. Заранее благодарю.Вот держите кому надо. Так и не нашел готового решения на форуме.
Этот сниппет ищет по столбцу 0 совпадения с переменной и если находит то возвращает (прим. для новичков "Выдает" номер строки с этим совпадением).
Код:string table_1ColText1 = "0";//Номер столбика таблицы table_1 с текстовыми значениями для первой фильтрации Текст 1 var table_1 = project.Tables["Таблица 1"];//переменная для таблицы table_1 var chekVar1 = project.Variables["checkvar"].Value;//переменная для сравнения 1 int RowCount1 = project.Tables["Таблица 1"].RowCount;//Количество строк в таблице table_1 RowCount1 = RowCount1-1;//Количество строк-1 в таблице table_1 for (int m = 0; m<=RowCount1; m++) { if (table_1.GetCell(table_1ColText1, m) == chekVar1) { return m; } }
Актуально!может ли кто-то допилить код, чтобы искало не одно первое совпадение, а все, и клало номера их строк в список. Заранее благодарю.
Актуально!
var SpisokResult = project.Lists["ИмяЗенноСписка"]; // указать имя зенносписка
string table_1ColText1 = "0";//Номер столбика таблицы table_1 с текстовыми значениями для первой фильтрации Текст 1
var table_1 = project.Tables["Таблица 1"];//переменная для таблицы table_1
var chekVar1 = project.Variables["checkvar"].Value;//переменная для сравнения 1
int RowCount1 = project.Tables["Таблица 1"].RowCount;//Количество строк в таблице table_1
RowCount1 = RowCount1 -1;//Количество строк-1 в таблице table_1
for (int m = 0; m <= RowCount1; m++)
{
if (table_1.GetCell(table_1ColText1, m) == chekVar1)
{
SpisokResult.Add(m.ToString());
}
}
Благодарю!C#:var SpisokResult = project.Lists["ИмяЗенноСписка"]; // указать имя зенносписка string table_1ColText1 = "0";//Номер столбика таблицы table_1 с текстовыми значениями для первой фильтрации Текст 1 var table_1 = project.Tables["Таблица 1"];//переменная для таблицы table_1 var chekVar1 = project.Variables["checkvar"].Value;//переменная для сравнения 1 int RowCount1 = project.Tables["Таблица 1"].RowCount;//Количество строк в таблице table_1 RowCount1 = RowCount1 -1;//Количество строк-1 в таблице table_1 for (int m = 0; m <= RowCount1; m++) { if (table_1.GetCell(table_1ColText1, m) == chekVar1) { SpisokResult.Add(m.ToString()); } }