Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Składnia
List.PositionOf(
list as list,
value as any,
optional occurrence as nullable number,
optional equationCriteria as any
) as any
O nas
Zwraca przesunięcie, na którym określona wartość jest wyświetlana na liście. Zwraca wartość -1, jeśli wartość nie jest wyświetlana.
-
list: lista do wyszukania. -
value: wartość do znalezienia na liście. -
occurrence: (Opcjonalnie) Określone wystąpienie do raportowania. Może to być Occurrence.First, Occurrence.Last lub Occurrence.All. Jeśli nieoccurrencezostanie określony,Occurrence.Firstzostanie użyty. -
equationCriteria: (Opcjonalnie) Określa sposób określania równości podczas porównywania wartości. Ten parametr może być funkcją selektora kluczy, funkcją porównującą lub listą zawierającą zarówno selektor klucza, jak i moduł porównujący.
Przykład 1
Znajdź pozycję na liście {1, 2, 3}, na której jest wyświetlana wartość 3.
Użycie
List.PositionOf({1, 2, 3}, 3)
Wyjście
2
Przykład 2
Znajdź na liście pozycję wszystkich wystąpień dat z 2022 roku.
Użycie
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
Wyjście
{1, 3, 4}
Przykład 3
Znajdź pozycję na liście ostatniego wystąpienia słowa psa, ignorując przypadek.
Użycie
let
Source = List.PositionOf(
{"dog", "cat", "DOG", "pony", "bat", "rabbit", "dOG"},
"dog",
Occurrence.Last,
Comparer.OrdinalIgnoreCase
)
in
Source
Wyjście
6
Przykład 4
Znajdź pozycję na liście, która znajduje się w odległości dwóch jednostek od liczby 28.
Użycie
let
Source = { 10, 15, 20, 25, 30 },
Position = List.PositionOf(
Source,
28,
Occurrence.First,
(x, y) => Number.Abs(x - y) <= 2
)
in
Position
Wyjście
4