Шаги, проверяющие соответствие по Подобно и по регулярному выражению
Существует проблема Давно назрело + в продолжение https://github.com/silverbulleters/add/issues/514
в шагах для файлов регулярки уже есть.
Хотелось бы иметь следующую функциональность нужно добавить шаги, проверяющие соответствие
-
[ ] по Подобно - хотя в части шагов есть поиск по *
-
[ ] и по регулярному выражению
проверять
-
[ ] заголовки форм/окон
-
[ ] заголовки элементов формы
-
[ ] заголовки колонок в таблицах форм
-
[ ] или другие представления элементов формы
-
[ ] имена элементов формы
-
[ ] имена колонок в таблицах форм
Дополнительный контекст
Очень нужно, потому что проверка-поиск постоянно нужен и очень часто нужно и подобно тоже. Как вариант можно сделать такое:
вместо
Если НРег(ОтображаемыйТекст) <> НРег(ПредставлениеЭлемента)
прописать такое:
Если НЕ Соответствует(ОтображаемыйТекст, ПредставлениеЭлемента)
...
`Функция Соответствует(Знач ГдеИскать, Знач ЧтоСравнить, ЭтоРегулярка = Ложь)
Если ЭтоРегулярка Тогда
Возврат СоответствуетРегулярка(ГдеИскать, ЧтоСравнить); // нужно реализовать
КонецЕсли;
ГдеИскать = НРег(ГдеИскать);
ЧтоСравнить = НРег(СокрЛП(ЧтоСравнить));
прЕстьЗвездаСлева = Лев(ЧтоСравнить, 1) = "*";
прЕстьЗвездаСправа = Прав(ЧтоСравнить, 1) = "*";
Если прЕстьЗвездаСлева И прЕстьЗвездаСправа Тогда
// подобие
Возврат СтрНайти(ГдеИскать, ЧтоСравнить);
ИначеЕсли прЕстьЗвездаСлева Тогда
// заканчивается на искомое
Возврат СтрЗаканчиваетсяНа(ГдеИскать, ЧтоСравнить);
ИначеЕсли прЕстьЗвездаСправа Тогда
// начинается на искомое
Возврат СтрНачинаетсяС(ГдеИскать, ЧтоСравнить);
Иначе
// строгое равенство
Возврат ГдеИскать = ЧтоСравнить;
КонецЕсли;
КонецФункции`
Тогда можно будет заменить везде, где равенство или подобие строк проверялось функцию Соответствует. Функцию СоответствуетРегулярка(ГдеИскать, ЧтоСравнить) не реализовал, потому что пока не разбирался, как в АДД работает рег.