Часто за автоматизацией ввода данных скрывается задача проверки вводимой информации или валидация. Если средства разработки позволяют, то проверка строковых данных по формату проверяется по маске, а если поддержки паттернов по маске нет, то в дело вступает применение регулярных выражений - один из незыблемых методов проверки строковых данных. Давай рассмотрим простой пример, когда в приложении Power APPS нужно проверять данные в строке под определенный формат. Если данные указаны в формате, то отметить это цветом, а неверные данные отметить другим цветом или значком.

Допустим у нас есть поле ввода eKod, у которого нужно сверить данные  по следующему формату:

  • Вначале допустимы только латинские заглавные буквы A, D, Y, Z.
  • После букв без пробела 3 цифры.

 Регулярное выражение будет таким:

[ADYZ]\d{3}

Для пользователей при заполнении данных через формы важно видеть сигналы корректности заполнения "здесь и сейчас". Поэтому для примера задействуем 2 таких сигнала: 

  1. Если код введен верно, то цвет шрифта зеленый, иначе красный.
  2. Если код введен верно, то иконка отметки рядом с полем ввода зеленая, иначе красная.

Для проверки условия для поля ввода eKod на свойство FontColor напишем следующее условие:

If(IsMatch(eKod.Value,"[ADYZ]\d{3}"), RGBA(0, 100, 0, 1), RGBA(255, 0, 0, 1))

где IsMatch функция, которая позволяет осуществлять проверку по регулярным выражениям и в результате возвращает булево значение True или False.

Для иконки тоже напишем почти такое же условие проверки, изменив код цвета, для свойства Color:

If(IsMatch(eKod.Value,"[ADYZ]\d{3}"), RGBA(0, 255, 0, 1), RGBA(255, 0, 0, 1))

В результате при вводе данных осуществляется проверка (валидация) и визуализация сигнала корректности ввода для пользователей:

Конечно же у функции IsMatch есть родственные функции Match, MatchAll и об этом можно прочесть в наглядном виде в официальной справке.