Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Синтаксис
List.PositionOf(
list as list,
value as any,
optional occurrence as nullable number,
optional equationCriteria as any
) as any
О нас
Возвращает смещение, по которому указанное значение отображается в списке. Возвращает значение -1, если значение не отображается.
-
list: список для поиска. -
value: значение, которое нужно найти в списке. -
occurrence: (Необязательно) Конкретный случай для отчета. Это значение может быть Occurrence.First, Occurrence.Last или Occurrence.All. Если неoccurrenceуказано,Occurrence.Firstиспользуется. -
equationCriteria: (необязательно) указывает, как определяется равенство при сравнении значений. Этот параметр может быть функцией селектора ключей, функцией сравнения или списком, содержащим как селектор ключей, так и средство сравнения.
Пример 1
Найдите позицию в списке {1, 2, 3}, в которой отображается значение 3.
Использование
List.PositionOf({1, 2, 3}, 3)
Выходные данные
2
Пример 2
Найдите позиции в списке всех дат 2022 года.
Использование
let
Source = {
#date(2021, 5, 10),
#date(2022, 6, 28),
#date(2023, 7, 15),
#date(2022, 12, 31),
#date(2022, 4, 8),
#date(2024, 3, 20)
},
YearList = List.Transform(Source, each Date.Year(_)),
TargetYear = 2022,
FindPositions = List.PositionOf(YearList, TargetYear, Occurrence.All)
in
FindPositions
Выходные данные
{1, 3, 4}
Пример 3
Найдите позицию в списке последнего вхождения слова собака, без учета регистра.
Использование
let
Source = List.PositionOf(
{"dog", "cat", "DOG", "pony", "bat", "rabbit", "dOG"},
"dog",
Occurrence.Last,
Comparer.OrdinalIgnoreCase
)
in
Source
Выходные данные
6
Пример 4
Найдите позицию в списке в пределах двух единиц числа 28.
Использование
let
Source = { 10, 15, 20, 25, 30 },
Position = List.PositionOf(
Source,
28,
Occurrence.First,
(x, y) => Number.Abs(x - y) <= 2
)
in
Position
Выходные данные
4