Функції EndsWith і StartsWith
Застосовується до: програм Canvas Стовпців Dataverse формул потоків на робочому столі Командного рядка програм Power Pages Power Platform на основі моделі
Перевіряє, чи починає або закінчує текстовий рядок інший текстовий рядок.
Опис
Функція EndsWith перевіряє, чи закінчується один текстовий рядок іншим.
Функція StartsWith перевіряє, чи починається один текстовий рядок іншим.
Для обох функцій ці тести є чутливими до регістру. Повернуте значення обох — це логічне значення true або false.
Використовуйте функції EndsWith і StartsWith з функцією Filter для пошуку даних у програмі. Крім того, можна використовувати оператор in або функцію Search для пошуку в будь-якому місці в текстових рядках, а не лише на початку або в кінці. Вибір функцій залежить від потреб вашої програми, а також функції, яку можна делегувати для певного джерела даних. Якщо одна з цих функцій не може бути делегована, з’явиться попередження про делегування в момент створення, щоб попередити вас про це обмеження.
Синтаксис
EndsWith( Текст, Кінцевий текст )
- Текст– обов’язковий. Текст, який необхідно перевірити.
- EndText – обов’язковий. Текст, пошук якого потрібно виконати в кінці Тексту. Якщо Кінцевий текст — це порожній рядок, то функція EndsWith повертає значення true.
StartsWith( Текст, Початковий текст )
- Текст– обов’язковий. Текст, який необхідно перевірити.
- StartText – обов’язковий. Текст, пошук якого потрібно виконати на початку Тексту. Якщо Початковий текст — це порожній рядок, то функція Початковий текст повертає значення true.
Приклади
Формула | Опис | Результат |
---|---|---|
EndsWith( "Привіт світ", "світ" ) | Перевіряє, чи закінчується "Hello World" словом "world". Перевірка нечутлива до регістру. | Справжній |
EndsWith( "До побачення", "добре" ) | Перевіряє, чи закінчується "Good bye" словом "good". Аргумент Кінцевий текст ("good") відображається в тексті, але не в кінці. | Брехня |
EndsWith( "Завжди вітайся", "привіт" ) | Перевіряє, чи закінчується "Always say hello" словом "hello". | Справжній |
EndsWith( "До побачення", "" ) | Перевіряє, чи закінчується "Bye bye" пустим тестовим рядком (Len повертає 0). Щоб полегшити його використання у виразах Filter, EndsWith налаштовано повертати true у цьому випадку. | Справжній |
Формула | Опис | Результат |
---|---|---|
StartsWith( "Hello World", "hello" ) | Перевіряє, чи починається "Hello World" словом "hello". Перевірка нечутлива до регістру. | Справжній |
StartsWith( "До побачення", "Привіт" ) | Перевіряє, чи починається "Good bye" словом "hello". | Брехня |
StartsWith( "Завжди вітайся", "привіт" ) | Перевіряє, чи починається "Always say hello" словом "hello". Хоча слово "hello" є в тексті, воно не стоїть на початку. | Брехня |
StartsWith( "До побачення", "" ) | Перевіряє, чи починається "Bye bye" пустим тестовим рядком (Len повертає 0). Щоб полегшити його використання у виразах Filter, StartsWith налаштовано повертати true у цьому випадку. | Справжній |
Можливості пошуку для користувача
У багатьох програмах можна ввести один або кілька символів у поле пошуку, щоб відфільтрувати список записів у великому наборі даних. Під час введення у списку відображаються лише записи, які відповідають умовам пошуку.
Приклади в решті частини цього розділу відображають результати пошуку в списку Клієнти, який містить ці дані.
Щоб створити це джерело даних як колекцію, створіть елемент керування Кнопка і встановіть для його властивості OnSelect цю формулу.
ClearCollect( Клієнти, Таблиця { (Назва: "Фред Гарсія", Компанія: "Northwind Traders" }, { Назва: "Коул Міллер", Компанія: "Contoso" }, { Назва: "Glenda Johnson", Компанія: "Contoso" }, { Назва: "Mike Collins", Компанія: "Adventure Works" }, { Назва: "Colleen Jones", Компанія: "Adventure Works") }
У цьому прикладі можна відобразити список записів у елементі керування "Галерея" в нижній частині екрана. У верхній частині екрана можна додати елемент керування Введення тексту, названий SearchInput, щоб користувачі могли визначити записи, які їх цікавлять.
Коли користувач вводить символи в поле SearchInput, результати в галереї автоматично фільтруються. У цьому випадку галерею налаштовано відображати записи, для яких ім’я клієнта (а не назва компанії) починається з послідовності символів у полі SearchInput . Якщо у полі пошуку користувач вводить co, в галереї відображаються такі результати.
Щоб фільтрувати на основі стовпця Ім’я, налаштуйте для властивості Елементи елемента керування галереєю одну з таких формул:
Формула | Опис | Результат |
---|---|---|
Filter( Клієнти, StartsWith( Ім’я, SearchInput.Text ) ) | Відфільтровує в джерелі даних Клієнти записи, в яких рядок пошуку відображається на початку стовпця Ім’я. Перевірка нечутлива до регістру. Якщо користувач вводить co у поле пошуку, в галереї відображаються Colleen Jones і Cole Miller. У колекції не відображається Mike Collins, оскільки стовпець Ім’я для цього запису не починається з рядка пошуку. | |
Фільтр( Клієнти, SearchInput.Text в імені ) | Відфільтровує в джерелі даних Клієнти записи, в яких рядок пошуку відображається в будь-якому місці стовпця Ім’я. Перевірка нечутлива до регістру. Якщо користувач вводить co у поле пошуку, в галереї відобразяться Colleen Jones,Cole Miller і Mike Collins, оскільки рядок пошуку присутній десь у стовпці Ім’я всіх цих записів. | |
Search( Клієнти, SearchInput.Text, "Ім’я" ) | Подібно до використання оператора in, функція Search виконує пошук збігів у всьому стовпці Ім’я кожного запису. Зверніть увагу на те, що ім’я стовпця потрібно взяти в подвійні лапки. |
Можна розгорнути область пошуку, щоб включити стовпець Компанія, а також стовпець Ім’я.
Формула | Опис | Результат |
---|---|---|
Filter( Customers, StartsWith( Ім’я, SearchInput.Text ) || StartsWith( Компанія, SearchInput.Text ) ) | Фільтрує джерела даних Клієнти за записами, в яких стовпець Ім’я або стовпець Компанія починається з рядка пошуку (наприклад co). ||Оператор має значення true, якщо функція StartsWith має значення true. | |
Фільтр( Клієнти, SearchInput.Text в імені || SearchInput.Text в компанії ) | Відфільтровує в джерелі даних Клієнти записи, в яких стовпець Ім’я або стовпець Компанія містить рядок пошуку (наприклад, co) у будь-якому місці стовпців. | |
Search( Клієнти, SearchInput.Text, "Ім’я", "Компанія" ) | Подібно до використання оператора in функція Search виконує пошук в джерелі даних Клієнти для записів, в яких стовпець Ім’я або стовпець Компанія містить рядок пошуку (наприклад, co) у будь-якому місці стовпців. Функцію Search простіше читати та записувати, ніж Filter, якщо потрібно вказати кілька стовпців і кілька операторів in. Зверніть увагу на те, що імена стовпців потрібно взяти в подвійні лапки. |